sql >> データベース >  >> RDS >> Oracle

SQLを介してOracleのCLOBからXMLサブタグを抽出する

    EXTRACTVALUE Oracle12では非推奨です-XMLTABLE または 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;
    

    または

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

    ただし、EXTRACTVALUEを使用する場合は あなたができること:

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


    1. このコードがPostgreSQLで失敗する理由と、それを修正する方法(回避策)?それはPostgresSQLエンジンの欠陥ですか?

    2. Unicorn、Sidekiq、DBプールのサイズについての私の理解は正しいですか?

    3. 単一のSQLServerステートメントはアトミックで一貫性がありますか?

    4. PostgreSQLの時間のタイムスタンプの違い