如何在BigQuery TIMESTAMP字段上使用LIKE运算符

时间:2019-10-14 08:05:18

标签: google-bigquery

我有一个类似的查询

SELECT Id,CreationDate From Orders WHERE CreationDate LIKE '2019-08-23%' ORDER BY CreationDate DESC LIMIT 5

我收到的错误消息是

  

运算符LIKE的以下参数类型没有匹配的签名:TIMESTAMP,STRING。支持的签名:STRING LIKE STRING;像[1:56]的BYTES之类的字节

如何在BigQuery的TIMESTAMP字段上使用LIKE运算符?

2 个答案:

答案 0 :(得分:2)

以下是用于BigQuery标准SQL

最佳方法是在WHERE DATE(CreationDate) = '2019-08-23'处使用DATE函数,如下例所示

#standardSQL
SELECT Id,CreationDate
FROM `project.dataset.Orders`
WHERE DATE(CreationDate) = '2019-08-23' 
ORDER BY CreationDate DESC 
LIMIT 5

答案 1 :(得分:0)

最好使用DATE函数来完成此任务。 date()或语句之间。

由于时间戳记不是字符串,因此您应CAST字符串化

select CAST(timestamp as STRING)