【发布时间】:2016-03-01 06:03:58
【问题描述】:
在子查询中使用 count(*) 的结果时,BigQuery 可能会返回错误。这是一个例子:
SELECT
SUM(IF(year%2=0, children, 0))
FROM (
SELECT year, COUNT(1) AS children
FROM [publicdata:samples.natality]
GROUP BY year
)
它会返回:
错误:函数 IF 中的参数类型不匹配:“children”是类型 uint64, '0' 是 int32 类型。
BigQuery 内部的某个地方 count(1) 和 0 有不同的类型,它会返回错误。
【问题讨论】:
标签: google-bigquery