針對Oracle 12c ...我有一個銷售給公司的行項目表。這張表格有賣給這家公司的銷售代表的三層級別。其中一列是公司名稱。我需要幫助編寫SQL,以便跨銷售給該公司的所有行在所有三列中生成逗號分隔的所有人員名稱的唯一列表。舉個例子...Oracle使用ListAgg,跨多列的不同值
CompanyName Rep Manager GVP
----------- ------- -------- --------
Sears Bob Tim Frank
Sears Jack Tim Frank
Ace Scott Chris Bill
當我看看西爾斯時,SQL應該返回'Bob,Jack,Tim,Frank'。名稱的順序無關緊要,只是它們是唯一的,並且它們包含來自所有3個字段的名稱。我會認爲這是一種LISTAGG查詢的,但可能是錯誤的...
我選擇這種方法作爲答案,因爲它只需要一次讀取數據。作爲獎勵,我必須承認,我從來沒有見過以這種方式使用CTAS(創建選擇表)。我喜歡。 – user1009073