[英]Spark SQL - Values from multiple columns into a single column
我需要將表格一數據轉換為表格二數據。 盡管有多個行條目,但 SaleCounts 屬於特定客戶或 customerId,但應將其放入以逗號分隔的單個單元格中。 請參閱以下內容以獲得更好的理解。
輸入 - 表格第 1 列(各列以空格分隔):
Customer Cid SaleCount
1 1 10
1 1 20
1 1 50
2 4 40
2 4 100
3 56 90
輸出 - 表格第 2 列(各列以空格分隔):
Customer Cid SaleCount
1 1 10,20,50
2 4 40,100
3 56 90
在 Spark SQL 中,我認為 FOR XML PATH 不起作用,請嘗試:
SELECT Customer, Cid, concat_ws(', ',collect_set(SaleCount)) as SaleCounts
FROM tbl1
GROUP BY Customer, Cid
ORDER BY Customer, Cid
這應該給你你在上面尋找的東西。
請嘗試以下方法:
SELECT Customer,Cid, STUFF( (SELECT ', ' + cast( d2.SaleCount as varchar(100)) FROM t1 d2 WHERE d2.Customer = t1.Customer and d2.Cid = t1.Cid ORDER BY Customer, Cid FOR XML PATH('')), 1, 1, '' ) 從 t1
按客戶分組,Cid
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.