在 bigquery 中使用 json_extract_scalar 时如何将 unix 时间戳转换为格式化日期

how do i convert unix time stamp to formatted date while using json_extract_scalar in bigquery

例如我有这个

SELECT  
JSON_EXTRACT_SCALAR(jsonBlob, '$.userName') as userName,
JSON_EXTRACT_SCALAR(jsonBlob, '$.Id') as id,
JSON_EXTRACT_SCALAR(jsonBlob, '$.CreatedDateTime') as CreatedDateTime,
from dataset.tableName

这给了我一个结果,但 CreatedDateTime 字段是 unix 时间戳,我想以 2018-02-01 17:11:43 格式获取它。我知道我可以使用

SELECT MSEC_TO_TIMESTAMP(CreatedDateTime) as CreatedDateTime 

稍后转换它,但是如果我想在上面的 select 语句中这样做怎么办。 有什么想法吗?

SELECT 
  MSEC_TO_TIMESTAMP(INTEGER(JSON_EXTRACT_SCALAR(jsonBlob, '$.CreatedDateTime'))) as CreatedDateTime   

以上是旧版 SQL 看起来就像您在问题中使用的内容

忘记提及 - 对于 BigQuery Standard SQL ,同样会如下所示

SELECT 
  TIMESTAMP_MILLIS(CAST(JSON_EXTRACT_SCALAR(jsonBlob, '$.CreatedDateTime') AS INT64)) as CreatedDateTime