sql - 对未知数量的类别使用 CASE WHEN
问题描述
假设我有一张这样的桌子
Col1 Col2
A 0.1
B 2.4
B 2.1
C 5.0
... ...
我想获得这张另一张桌子
ColA ColB ColC
0.1 0 0
0 2.4 0
0 2.1 0
0 0 5.0
... ... ...
要创建一个单列,我可以使用CASE WHEN
as
SELECT CASE WHEN Col1 = 'A' THEN Col2 ELSE 0 END AS ColA FROM TABLE
但是我不知道在 Col1 中有多少不同的类别,并且可能有很多。如何使用 BigQuery 获得此结果?