不知道要调用什么函数,但转置是我能想到的最接近的东西。
我在 BigQuery 中有一个配置如下的表:
但我想查询一个配置如下的表:
创建此表的 SQL 代码是什么样的?
谢谢!
最佳答案
2021 年更新:
一个新的UNPIVOT运算符已被引入 BigQuery。
在使用 UNPIVOT 将 Q1、Q2、Q3、Q4 旋转到销售和季度列之前:
产品
第一季度
第二季度
第三季度
第四季度
羽衣甘蓝
51
23
45
3
苹果
77
0
25
2
在使用 UNPIVOT 将 Q1、Q2、Q3、Q4 旋转到销售和季度列之后:
产品
销售量
四分之一
羽衣甘蓝
51
第一季度
羽衣甘蓝
23
第二季度
羽衣甘蓝
45
第三季度
羽衣甘蓝
3
第四季度
苹果
77
第一季度
苹果
0
第二季度
苹果
25
第三季度
苹果
2
第四季度
询问:
WITH Produce AS (
SELECT 'Kale' as product, 51 as Q1, 23 as Q2, 45 as Q3, 3 as Q4 UNION ALL
SELECT 'Apple', 77, 0, 25, 2
)
SELECT * FROM Produce
UNPIVOT(sales FOR quarter IN (Q1, Q2, Q3, Q4))
关于sql - 如何在 BigQuery 中取消透视?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27832170/