【问题标题】:Google BigQuery : transpose rows in columnsGoogle BigQuery:转置列中的行
【发布时间】:2017-05-11 05:47:24
【问题描述】:

我知道已经打开了一些线程,但以下是我的请求。 我想将客户购买的所有商品从行到列,键是 order_id。 下面是一个数据样本,因为我有大约。 1M 行。

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

有人可以帮忙吗?

【问题讨论】:

  • 请标记您的 DBMS 并发布您的实际代码。

标签: sql pivot rows transpose


【解决方案1】:

您可以通过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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-01
    • 2019-04-24
    • 1970-01-01
    • 2018-10-05
    • 1970-01-01
    相关资源
    最近更新 更多