BigQuery 是否支持任何日期时间数据类型的纳秒?

Jai*_*son 0 google-bigquery

我对DATETIMETIMESTAMP数据类型做了一些研究,我知道它们支持以毫秒和微秒表示的日期时间

像下面那个,

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)

Gra*_*ley 5

实际上,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)