Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Truy xuất các phần tử XML từ XMLType Oracle

Bạn có thể sử dụng kết hợp existsNodeextract các chức năng như sau.

SELECT b.SOFT_ATTRIBUTES,
  CASE
    WHEN existsNode (a.soft_attributes ,'/*/'
      ||b.SOFT_ATTRIBUTES) = 1
    THEN a.soft_attributes.extract('/*/'
      ||b.SOFT_ATTRIBUTES
      ||'/text()').getStringVal()
  END value
FROM xml_analysis a,
  xml_softattributes b
WHERE a.id = b.id;

* được sử dụng như một ký tự đại diện để khớp với bất kỳ nút con nào. Ví dụ:/ PO / * / STREET khớp với bất kỳ phần tử đường phố nào là cháu của phần tử PO.

Đầu ra:

attr1   ABC
attr2   XYZ
attr3   PQR


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lưu trữ dữ liệu ngày giờ dưới dạng số

  2. Lỗi khi tạo kết nối với Oracle ODBC trong Excel

  3. Làm thế nào để sử dụng WebDev.WebServer.exe (VS Web Server) trong x64?

  4. Mã chuyên sâu I / O không đồng bộ chạy chậm hơn không đồng bộ, tại sao?

  5. Chuyển đổi phút sang định dạng HH24:MI