BigQuery SQL同一列多个表达式

BigQuery SQL同一列多个表达式,sql,google-bigquery,Sql,Google Bigquery,我正在使用谷歌的大查询服务进行一些数据处理……我的数据库看起来像: value ----- 'a' 'b' 'a' 'a' 'a' 'b' 我想写一个查询来计算各种值的出现次数 例如: Count('a') Count('b') ---------- ---------- 4 3 我通常使用用例来解决这个问题;但BQ并不支持这一观点 有人有什么想法吗 谢谢 我建议的第一件事是由分组: select value, count(*) from t group b

我正在使用谷歌的大查询服务进行一些数据处理……我的数据库看起来像:

value
-----

'a'
'b'
'a'
'a'
'a'
'b'
我想写一个查询来计算各种值的出现次数

例如:

Count('a')   Count('b')
----------   ----------
4             3
我通常使用用例来解决这个问题;但BQ并不支持这一观点

有人有什么想法吗


谢谢

我建议的第一件事是由
分组:

select value, count(*)
from t
group by value
但您似乎希望将值放在一行中。根据这一点,它确实支持
案例
。如果愿意,您可以在以下情况下使用

select sum(if(value = 'A', 1, 0)) as A, sum(if(value = 'B', 1, 0)) as B
from t

回答得很好。我只想添加使用LOWER的选项,以确保不会得到大小写不同的结果,假设db接受混合的情况。