sql >> Database teknologi >  >> RDS >> Oracle

Oracle XMLTABLE venstre ydre sammenføjning returnerer ikke resultater, når XPath ikke eksisterer

Du har ikke brug for flere kald til XMLTable, du kan flytte elementvalget ind i kolonnestisætningen og have tre sådanne klausuler:

select x.id1, x.id2, x.id3
from tbl t
cross join
  xmltable ('/root'
    passing t.xml_data
    columns id1 varchar2 (100) path 'element[id=1]/data',
       id2 varchar2 (100) path 'element[id=2]/data',
       id3 varchar2 (100) path 'element[id=3]/data'
) x;

ID1   ID2   ID3 
----- ----- -----
abc   def        


  1. Mysql:tilføjelse af fremmed nøgle giver ingen advarsel/fejl på MyISAM-tabeller

  2. Tæl værdier over m/n forbundne tabeller i SQL

  3. mysql mange til mange forhold

  4. Tilslutning af PolyBase til Salesforce.com