我有一個帶有兩列標籤和位置的表。ORACLE:用逗號返回不同的值
Label Location
---------------------------------------
OLR-2873-SSA/GTA GTA
OLR-2873-SSA/GTA GTA
OLR-2873-SSA/POW POW
OLR-2873-SSA/POWGTA POWGTA
我想輸出到像
Lable Location
-----------------------------------------------------------------------
OLR-2873-SSA/GTA,OLR-2873-SSA/POW,OLR-2873-SSA/POWGTA GTA,POW,POWGTA
我想使用正則表達式,並得到他的輸出。
我試圖
Select
dbms_lob.substr(ltrim(REGEXP_REPLACE(REPLACE(
REPLACE(
XMLAGG(
XMLELEMENT("A",label)
ORDER BY label).getClobVal(),
'<A>',','),
'</A>',''),'([^,]+)(,\1)+', '\1'),
','),4000,1) label , dbms_lob.substr(ltrim(REGEXP_REPLACE(REPLACE(
REPLACE(
XMLAGG(
XMLELEMENT("A",location)
ORDER BY location).getClobVal(),
'<A>',','),
'</A>',''),'([^,]+)(,\1)+', '\1'),
','),4000,1) LOCATION from table_name.
但我得到這樣
Label Location
----------------
OLR-2873-SSA/GTA,OLR-2873-SSA/POWGTA GTA,POWGTA
我想在甲骨文的答案。 –
Ahhh我現在看到標籤或許在問題中指定也會很好。如果其他人在尋找MS版本,我會放棄它。 – Matt