sql >> Databasteknik >  >> RDS >> Oracle

Extrahera XML-undertaggar från en clob i Oracle via SQL

EXTRACTVALUE är utfasad i Oracle 12 - den ersätts av XMLTABLE eller XMLQUERY .

SELECT x.description
FROM   your_table t
       CROSS JOIN
       XMLTABLE(
         '//object/'
         PASSING XMLTYPE( t.your_clob_column )
         COLUMNS description VARCHAR2(4000) PATH './property[@name="description"]/@value'
       ) x;

eller

SELECT XMLQUERY(
         '//object/property[@name="description"]/@value'
         PASSING XMLTYPE( your_clob_column )
         RETURNING CONTENT
       ).getStringVal()
FROM   your_table;

Men om du vill använda EXTRACTVALUE du kan göra:

SELECT EXTRACTVALUE(
         XMLTYPE( your_clob_column ),
         '//object/property[@name="description"]/@value'
       )
FROM   your_table;


  1. Hur man filtrerar rader med nollvärden i Select Statement i SQL Server - SQL Server / TSQL Tutorial Del 110

  2. Hur skriver man en fråga för att jämföra aktuellt datum med skapade_at tidsstämplar i databasen?

  3. Hur uppdaterar du i SQL varje rad i tabellen genom att hitta alla rader som är lika för en kolumn och sedan ställa in en annan kolumn lika med varandra

  4. De vanligaste frågorna för att hitta Patch tillämpad i Oracle-appar