Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

ऑरैकल में सीडीएटीए के अंदर डेटा का विश्लेषण कैसे करें

Oracle 12 में आपको यह करने में सक्षम होना चाहिए:

SELECT tenantId
FROM   your_table t
       LEFT OUTER JOIN
       XMLTABLE(
         '/PayLoad/.'
         PASSING XMLTYPE( t.your_xml_column )
         COLUMNS cdata CLOB PATH '.'
       ) x
       ON ( 1 = 1 )
       LEFT OUTER JOIN
       JSON_TABLE(
         x.cdata,
         '$'
         COLUMNS ( tenantId VARCHAR2(10) PATH '$.order.tenantId' )
       ) j
       ON ( 1 = 1 );

(अगले कुछ घंटों के लिए 11g पर होने के कारण परीक्षण नहीं किया गया)

Oracle 11 पर:

SELECT REGEXP_SUBSTR( x.cdata, '"tenantId":"((\\"|[^"])*)"', 1, 1, NULL, 1 ) AS tenantId
FROM   your_table t
       LEFT OUTER JOIN
       XMLTABLE(
         '/PayLoad/.'
         PASSING XMLTYPE( t.your_xml_column )
         COLUMNS cdata CLOB PATH '.'
       ) x
       ON ( 1 = 1 )

या (यदि JSON स्ट्रिंग XML की किसी अन्य शाखा में नहीं होगी) तो आप बस इसका उपयोग कर सकते हैं:

SELECT REGEXP_SUBSTR(
         your_xml_column,
         '"tenantId":"((\\"|[^"])*)"',
         1,
         1,
         NULL,
         1
       ) AS tenantId
FROM   your_table


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. पिछले 5 वर्षों के 31 दिसंबर और आज की तारीख का डेटा प्राप्त करें

  2. Oracle Sql डेवलपर स्ट्रिंग शाब्दिक बहुत लंबी त्रुटि

  3. भौतिक स्टैंडबाय में ORA-01264

  4. मैं एडीओ कनेक्शन स्ट्रिंग का उपयोग करके ओरेकल डेटाबेस से एसवाईएस के रूप में कैसे जुड़ सकता हूं?

  5. मैं अपने प्रोजेक्ट में अनुक्रमों को कैसे परिभाषित करूं (जो हाइबरनेट का उपयोग करता है) इस तरह से कि प्रोजेक्ट ओरेकल और माइस्क्ल दोनों के साथ काम करता है।