我有一个类似的查询
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运算符?
答案 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)