【问题标题】:BigQuery: extract date from datetime with timezoneBigQuery:从带有时区的日期时间中提取日期
【发布时间】:2019-12-04 12:21:59
【问题描述】:

我正在尝试在 BigQuery 中返回一个列,其中包含从列 start_time 中提取的日期。

列中的值格式为:11/27/2019 14:40:15 CET +0100

我写了以下代码:

SELECT EXTRACT(DATE FROM TIMESTAMP(start_time))
  AS date
  FROM `cc_raw.cc_exp` 

但是我收到错误消息:无效的时间戳:'11/27/2019 14:40:15 CET +0100'

这里该怎么走?

非常感谢, 珍妮

【问题讨论】:

    标签: datetime google-bigquery


    【解决方案1】:

    以下是 BigQuery 标准 SQL

    #standardSQL
    SELECT 
      EXTRACT(DATE FROM PARSE_TIMESTAMP('%m/%d/%Y %H:%M:%S %Z %z', start_time)) AS date
    FROM `cc_raw.cc_exp`   
    

    您使用PARSE_TIMESTAMP 函数和'%m/%d/%Y %H:%M:%S %Z %z' 来处理以字符串形式呈现的时间戳,格式为'11/27/2019 14:40:15 CET +0100'

    你可以在下面运行快速测试

    #standardSQL
    SELECT 
      EXTRACT(DATE FROM PARSE_TIMESTAMP('%m/%d/%Y %H:%M:%S %Z %z', '11/27/2019 14:40:15 CET +0100')) AS date
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-23
      • 1970-01-01
      相关资源
      最近更新 更多