google-bigquery - 为什么 BigQuery 包装/舍入时间戳的最大值?
问题描述
根据官方文档,BigQuery 支持类型的0001-01-01 00:00:00 to 9999-12-31 23:59:59.999999 UTC
范围Timestamp
。但是,当我们尝试将值设置为 时9999-12-31 23:59:59.999999Z
,BigQuery 会返回10000-01-01 00:00:00 UTC
。
#standardSQL
SELECT
min_timestamp,
max_timestamp,
UNIX_MICROS(min_timestamp) AS min_unix_micros,
UNIX_MICROS(max_timestamp) AS max_unix_micros
FROM (
SELECT
TIMESTAMP '0001-01-01 00:00:00.000000Z' AS min_timestamp,
TIMESTAMP '9999-12-31 23:59:58.999999Z' AS max_timestamp
);
这是一个错误,还是我们做错了什么?用例是结束记录,这是其他 DW/DB 的常见做法。
解决方案
推荐阅读
- python - Pandas MultiIndex 或 Pivot Table Dillema
- java - 如何从绘图线程(SurfaceView)调用另一个活动
- c++ - 用于图形 API 的 Microsoft C++ Rest SDK
- python - 如何添加 python 字典中使用的新键?
- node.js - 无法在 AWS Elastic beanstalk 上部署节点映像(NestJS)
- curl - 从 sourceforge 获取直接下载链接
- arrays - 比较重复的列和行
- cryptocurrency - 如何为我的应用考虑代币经济学?
- sql - 基于可选条件的 SELECT 查询在目标表中的 NULL 上失败
- algorithm - 在不触及 html 属性的情况下替换单词列表的最有效方法是什么?