OracleではWMSYSを使用します.WM_CONCATは列変換行を行い、自動的につなぎ合わせる

2667 ワード

select  t.rank, t.Name from t_menu_item t; 

10 CLARK 
10 KING 
10 MILLER 
20 ADAMS 
20 FORD 
20 JONES 
20 SCOTT 
20 SMITH 
30 ALLEN 
30 BLAKE 
30 JAMES 
30 MARTIN 
30 TURNER 
30 WARD 

-------------------------------- 
     10g      WMSYS.WM_CONCAT                

select t.rank, WMSYS.WM_CONCAT(t.Name) TIME From t_menu_item t GROUP BY t.rank; 

DEPTNO ENAME 
------ ---------- 
10 CLARK, KING, MILLER 
20 ADAMS, FORD, JONES, SCOTT, SMITH 
30 ALLEN, BLAKE, JAMES, MARTIN, TURNER, WARD