【发布时间】:2020-02-04 09:05:13
【问题描述】:
这是我写的公式↓
count(if(avg(timestamp_diff(broker_delivery_date,request_datetime,minute)),0) >= 30,id,NULL)
这是不断出现的错误↓
对于参数类型的函数 IF 没有匹配的签名:FLOAT64, INT64。支持的签名:IF(BOOL, ANY, ANY) at [10:10]
【问题讨论】:
-
阅读括号
-
我不太了解 bigquery,但像任何 sql 一样,您可以使用 where 子句,并选择所需的列。在你的情况下 count(*) 也应该工作。
-
@PaganottiFelipeSato 。 . .您的代码看起来像是嵌套聚合函数
count()和avg()。这在任何数据库中通常是不允许的。示例数据、所需结果以及对您要实现的逻辑的解释都会有所帮助。
标签: sql google-bigquery