Google BigQuery日期字符串要加时间戳

时间:2019-10-28 14:06:54

标签: google-bigquery

我是Google BigQuery的新手。我有一个格式为2019年10月7日格林尼治标准时间+2的日期,并希望将日期转换为格林尼治标准时间+2,2019年10月7日上午11:28:26。

1 个答案:

答案 0 :(得分:0)

部分答案,这似乎可以解决问题:

SELECT PARSE_TIMESTAMP(
  '%b %d, %Y, %H:%M:%S %p GMT%z'
  , 'Oct 7, 2019, 11:28:26 AM GMT+02')
# 2019-10-07 09:28:26 UTC   

但是,只有将时区表示为GMT+02时,它才能正常工作。 GMT+2失败了,也许其他人可以帮助我们正确解析此错误。

然后,如果您想按要求设置日期格式:

SELECT FORMAT_TIMESTAMP(
  '%Y-%m-%d, %H:%M:%S %p GMT%z'
  , x
  , '+2')
FROM (
  SELECT PARSE_TIMESTAMP(
     '%b %d, %Y, %H:%M:%S %p GMT%z'
     , 'Oct 7, 2019, 11:28:26 AM GMT+02'
  ) x
)
# 2019-10-07, 11:28:26 AM GMT+0200  

请注意,将原始时区“ 2”提取到时间戳时会丢失。