簡體   English   中英

Oracle SQL 查詢 CONCAT、GROUP BY

[英]Oracle SQL query CONCAT, GROUP BY

我有這張桌子

在此處輸入圖像描述

我想按 POS ASC排序並聚合兩列 X、Y 以便我的 ID 變為唯一。 所以結果應該是這樣的。

在此處輸入圖像描述

我嘗試了很多小時,我可以聚合列 X,Y。 但是當我做一個GROUP BY ID 然后WMCONCAT(X,Y)我不能按 POS col 對它進行排序....

任何幫助也許..? 謝謝。

不要使用WM_CONCAT ,而是嘗試使用LISTAGG聚合 function:它允許您指定您選擇的排序:

SELECT ID,  
       LISTAGG('(' || X || ', ' || Y || ')', ', ') WITHIN GROUP (ORDER BY POS) AS XY
FROM tab
GROUP BY ID

此處查看演示。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM