Oracle
 sql >> база данни >  >> RDS >> Oracle

Лявото външно съединение на Oracle XMLTABLE не връща резултати, когато XPath не съществува

Нямате нужда от множество извиквания на XMLTable, можете да преместите избора на елемент в клаузата за пътя на колоната и да имате три такива клаузи:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Какъв е най-добрият начин да се определи коя версия на клиента Oracle използвам?

  2. NLS_NUMERIC_CHARACTERS настройка за десетичен знак

  3. SQL - Как да изберете ред с колона с максимална стойност (+ групиране по)

  4. Търсенето без регистри и букви в Oracle

  5. Възможно ли е да се прочете CLOB от отдалечена база данни на Oracle?