BigQuery - 时间戳偏移不适用于 insertAll / Streaming?
Posted
技术标签:
【中文标题】BigQuery - 时间戳偏移不适用于 insertAll / Streaming?【英文标题】:BigQuery - timestamp offset not working with insertAll / Streaming? 【发布时间】:2014-04-04 14:32:36 【问题描述】:我正在使用 python bigquery api。我正在将数据流式传输到表中,并希望将数据记录生成时间戳存储在 UTC 和生成数据的本地时间中。
我正在传递以下内容:
...
"timestamp_utc": "2014-04-04 09:01:10.762137+00:00",
"timestamp_local_time": "2014-04-04 11:01:10.762137+02:00",
...
这两个结果都会生成时间存储为 09:01:10 UTC 的列。这是一个已知的限制还是我做错了什么?
【问题讨论】:
【参考方案1】:Bigquery 时间戳时间不记录时区。输入时间始终转换为 UTC 并以 UTC 格式存储。查询和表读取将时间戳作为 unix 时间戳返回,表示为自 1970-01-01 00:00:00 UTC 纪元以来的浮点秒数。 Web UI 始终以 UTC 时区呈现时间。
所以总结一下,就 BigQuery 时间戳类型而言,您的示例中的两次是等效的。
【讨论】:
你确定吗?这是一个大查询的测试表查询的csv结果,由浏览器工具输出:id,time
2,2014-04-04 11:56:59.405726+02:00
你的答案是正确的!我不小心将测试表中的时间列创建为字符串。以上是关于BigQuery - 时间戳偏移不适用于 insertAll / Streaming?的主要内容,如果未能解决你的问题,请参考以下文章
在 BigQuery SQL for Data Studio 中格式化 Firestore 时间戳