我对DATETIME和TIMESTAMP数据类型做了一些研究,我知道它们支持以毫秒和微秒表示的日期时间
像下面那个,
YYYY-[M]M-[D]D[( |T)[H]H:[M]M:[S]S[.DDDDDD]]
Run Code Online (Sandbox Code Playgroud)
但是,是否可以加载/表示具有纳秒精度的值?
喜欢,
YYYY-[M]M-[D]D[( |T)[H]H:[M]M:[S]S[.DDDDDDDDD]]
Run Code Online (Sandbox Code Playgroud)
实际上,BigQuery 支持高达微秒的精度,而不仅仅是毫秒。
不,我不相信它支持纳秒精度(也许 Google 员工会在那里纠正我),而且我当然在文档中看不到任何内容。然而,这是说明:
如果 string_expression 无效、超过六个亚秒数字(即精度大于微秒)或表示超出支持的时间戳范围的时间,则会产生错误。
因此,这将起作用:
SELECT CAST('2017-01-01 00:00:00.000000' AS TIMESTAMP)
Run Code Online (Sandbox Code Playgroud)
但这不会(“Could not cast literal "2017-01-01 00:00:00.000000000" to type TIMESTAMP"):
SELECT CAST('2017-01-01 00:00:00.000000000' AS TIMESTAMP)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3733 次 |
| 最近记录: |