sql >> Databasteknik >  >> RDS >> Oracle

Oracle XMLTABLE vänster yttre koppling ger inga resultat när XPath inte finns

Du behöver inte flera anrop till XMLTable, du kan flytta elementvalet till kolumnsökvägssatsen och ha tre sådana satser:

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. Returnera rader i slumpmässig ordning

  2. Hur kan jag få upp enum möjliga värden i en MySQL-databas?

  3. Överträdelse av integritetsbegränsning:1052 kolumn "id" där klausulen är tvetydig

  4. Får fel anslut ECONNREFUSED 127.0.0.1:3306 vid anslutning till mysql