尝试使用以下语句:
SELECT *
FROM data.example
WHERE TIMESTAMP(timeCollected) < DATE_ADD(USEC_TO_TIMESTAMP(NOW()), 60, 'MINUTE')
从我的bigquery数据中获取数据。即使时间不在该范围内,它似乎也会返回相同的结果集。timeCollected
格式为2015-10-29 16:05:06
。
我正在尝试建立一个查询,该查询旨在返回不早于一个小时的数据。因此,应返回在过去一小时内收集的数据,其余的应忽略。
您所查询的意思是“将收集时间少于一个小时的任何东西归还给我”,这实际上意味着您的整个表格。您需要以下内容(至少从我的评论中得出):
SELECT *
FROM data.example
WHERE TIMESTAMP(timeCollected) > DATE_ADD(USEC_TO_TIMESTAMP(NOW()), -60, 'MINUTE')
这意味着任何不超过一个小时前的timeCollected都不会返回。我相信这就是您想要的。
另外,除非需要,否则Select *在BigQuery中也不理想。由于数据是按列保存的,因此您可以通过仅选择所需的内容来省钱。我不知道您的用例,因此*可能有保证
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句