检查group中的是否存在值等于 BigQuery SQL 中的特定值

我有一个如下所示的数据集:

ID|Date_Val|Data
1|2022-01-01|A
1|2022-01-01|I
1|2022-01-01|H
2|2022-01-01|G
2|2022-01-01|G
2|2022-01-01|I

我想运行如下所示的查询:

SELECT ID, Date_Val, IF(SELECT ID, Date_Val,
       CASE WHEN MAX(CASE WHEN Data = 'A' THEN 1 END) > 0 THEN 'A' ELSE 'B' END AS Data
 FROM yourTable
 GROUP BY 1, 2;
, 'A', 'B')
GROUP BY 1,2

输出数据集:

ID|Date_Val|Data
1|2022-01-01|A
2|2022-01-01|B

发表回复