0

ラベルと場所の 2 つの列を持つテーブルがあります。

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
4

2 に答える 2