[英]How do I configure Google BigQuery command line tool to use a Service Account?
[英]how do I pivot this on google BigQuery?
这是我目前正在使用的数据。
X | 是 | A |
---|---|---|
3个 | 2个 | 二 |
5个 | 2个 | 二 |
5个 | 4个 | 二 |
3个 | 4个 | 二 |
6个 | 7 | RR |
8个 | 7 | RR |
8个 | 9 | RR |
6个 | 9 | RR |
我正在尝试 pivot 表格,使其变为:
x1 | x2 | y1 | y2 | A |
---|---|---|---|---|
3个 | 5个 | 2个 | 4个 | 二 |
6个 | 8个 | 7 | 9 | RR |
我试过 AGG 和 PIVOT 函数,但似乎无法让它工作,这必须使用 onky Google BQ 来完成。 完整的数据集要大得多,所以我需要一个通用的解决方案。 任何帮助或建议将不胜感激。 谢谢!
以下应该是您的良好开端
select * from (
select * from
(select *, row_number() over(partition by a) pos from (select distinct x, a from your_table))
full outer join
(select *, row_number() over(partition by a) pos from (select distinct y, a from your_table))
using (a, pos)
)
pivot (any_value(x) as x, any_value(y) as y for pos in (1,2))
如果应用于您问题中的样本数据 - output 是
您可以动态构建该查询(因此您不需要显式指定唯一值的计数)并使用 EXECUTE IMMEDIATE 来运行它 - SO 上有很多此类技术的示例!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.