2016-12-26 71 views
1

我知道有一些线程已经打开,但下面是我的要求。 我想将顾客购买的所有物品从行移到列,键是order_id。 下面是我有约数据的一个样本。 1M行。谷歌BigQuery:转置列

1)我想这样:

Row   |order_id   |sku  
1    |600007637  |M0532OCAL_M900_TU 
2    |600007637  |S9035OECD_M930_TU 
3    |600007613  |3SN002VMM_H000  
4    |600007613  |3SN171XGU_H860 

2)要成为这个

Row  |order_id   |sku      |sku2     
1   |600007637   |M0532OCAL_M900_TU  |S9035OECD_M930_TU  
2   |600007613   |3SN002VMM_H000   |3SN171XGU_H860 

有人能帮忙吗?

+0

请为您标记DBMS并发布您的实际代码。 – McNets

回答

0

您可以加入order_id和另一个sku。然后按order_id对其进行分组:

select TA1.order_id, TA1.sku, TA2.sku as sku2 
from table_name as TA1 
left join table_name as TA2 
on TA1.order_id = TA2.order_id and TA2.sku != TA1.sku 
group by TA1.order_id