1
我有以下3個表:如何申請在Oracle中加入要求的結果
SHIFT_MASTER,PATTERN_MASTER,PATTERN_DETAILS
S_ID,P_ID,P_D_ID是SHIFT_MASTER,PATTERN_MASTER的priamry鍵,分別PATTERN_DETAILS表。
SHIFT_MASTER
S_ID | S_NUMBER| S_Name
---------------------------------
1 A MORNING
2 B AFTERNOON
3 C NIGHT
PATTERN_MASTER
P_ID | P_NAME
----------------
1 Pattern 1
2 Pattern 2
PATTERN_DETAILS
P_D_ID|P_ID | S_ID| ...
---------------------
1 1 1
2 1 2
3 1 3
4 1 2
5 1 1
6 2 3
7 2 2
8 2 1
9 2 3
I GOT OUTPUT AS
P_ID | S_ID
1 1,2,3,2,1
2 3,2,1,3
使用查詢
SELECT PATTERN_DETAILS.P_ID "PATTERN",
LISTAGG(PATTERN_DETAILS.S_ID, ', ')
WITHIN GROUP (ORDER BY PATTERN_DETAILS.P_D_ID) "SHIFT"
FROM PATTERN_DETAILS
GROUP BY PATTERN_DETAILS.P_ID;
我想是
P_NAME | S_NUMBER
Pattern 1 A,B,C,B,A
Pattern 2 C,B,A,C
任何建議???而不是P_ID我想顯示模式名稱,而不是移位ID我想顯示移位號碼。如何執行連接操作以及listagg函數?