不确定要调用什么函数,但转置是我能想到的最接近的函数。
I have a table in BigQuery that is configured like this:
但我想查询一个配置如下的表:
创建此表的 SQL 代码是什么样的?
Thanks!
2021 年更新:
A new UNPIVOT https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax#unpivot_operatorBigQuery 中引入了运算符。
在使用 UNPIVOT 将 Q1、Q2、Q3、Q4 旋转为销售额和季度列之前:
product |
Q1 |
Q2 |
Q3 |
Q4 |
Kale |
51 |
23 |
45 |
3 |
Apple |
77 |
0 |
25 |
2 |
使用 UNPIVOT 将 Q1、Q2、Q3、Q4 旋转为销售额和季度列后:
product |
sales |
quarter |
Kale |
51 |
Q1 |
Kale |
23 |
Q2 |
Kale |
45 |
Q3 |
Kale |
3 |
Q4 |
Apple |
77 |
Q1 |
Apple |
0 |
Q2 |
Apple |
25 |
Q3 |
Apple |
2 |
Q4 |
Query:
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))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)