我正在尝试(但失败)使用标准SQL在BigQuery中执行以下查询
SELECT
user_id
FROM
dataset.table
WHERE
timestamp > TIMESTAMP("2017-09-18 00:00")
Run Code Online (Sandbox Code Playgroud)
我不断得到信息
Query Failed
Error: Invalid timestamp: '2017-09-18 00:00'
Run Code Online (Sandbox Code Playgroud)
我尝试,绝望地使用2017-09-18T00:00或喜欢传统SQL都timestamp > "2017-09-18 00:00"没有成功。
谢谢你的帮助。
我认为有效的时间戳记包含一个小时,分钟和秒的时间部分。您的时间戳文字省略了秒部分。尝试包括它:
SELECT
user_id
FROM
dataset.table
WHERE
timestamp > TIMESTAMP('2017-09-18 00:00:00')
Run Code Online (Sandbox Code Playgroud)
您需要在时间戳中包含秒,以及当前的时间戳没有意义的原因是,BigQuery在内部将时间戳存储为纪元秒。如果不指定秒数,则不能可靠地存储您的时间戳。
从文档中:
您可以将TIMESTAMP数据类型描述为UNIX时间戳或日历日期时间。BigQuery在内部将TIMESTAMP数据存储为UNIX时间戳,精度为微秒。
| 归档时间: |
|
| 查看次数: |
3163 次 |
| 最近记录: |