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

ओरेकल पार्सर का उपयोग कर एक्सएमएल से पहली बार हुआ मूल्य प्राप्त करना

मुझे लगता है कि आप यही खोज रहे हैं-

FOR r IN (  SELECT rownum rn, cells
           FROM xmltable('/SearchOutput/rowArray/Row' passing XMLTYPE(l_xmlclob)
                                     columns CELLS  XMLTYPE PATH './cellArray') f
        )
 LOOP
  DBMS_OUTPUT.PUT_LINE('Row: '||r.rn);      
  FOR c IN ( SELECT colid, 
                    colval
               FROM xmltable('for $i in /cellArray/Cell
                              return $i' 
                              passing r.cells
                              columns COLID NUMBER PATH 'columnId',
                                      COLVAL VARCHAR(20) PATH 'valueArray/Value[1]/value')                  
           )
  LOOP
     DBMS_OUTPUT.PUT_LINE('colid, col value: '||c.colid||', '||c.colval);
  END LOOP;
 END LOOP;
end;

या

FOR r IN (  SELECT rownum rn, cells
           FROM xmltable('/SearchOutput/rowArray/Row' passing XMLTYPE(l_xmlclob)
                                     columns CELLS  XMLTYPE PATH './cellArray')
        )
 LOOP
  DBMS_OUTPUT.PUT_LINE('Row: '||r.rn);      

  FOR c IN ( SELECT colid, colval
               FROM xmltable('/cellArray/Cell' passing r.cells
                                               columns COLID NUMBER PATH './columnId',
                                                       COLVAL VARCHAR(20) PATH     './valueArray/Value[1]/value')
           )
  LOOP
     DBMS_OUTPUT.PUT_LINE('colid, col value: '||c.colid||', '||c.colval);
  END LOOP;
 END LOOP;

आउटपुट-

Row: 1
colid, col value: 1, Uganda
colid, col value: 5, AZ12604823-001
colid, col value: 2, IT06686
colid, col value: 9, Hu Mics Metab K
colid, col value: 8, 2006-06-21
colid, col value: 7, 2006-07-27

Value[1] आपको बहु-पंक्ति तत्व का पहला यानी पहला Value देगा सिंगलटन।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL समूह द्वारा - प्रति माह/वर्ष रिकॉर्ड की गिनती, डालने पर त्रुटि - मान्य माह नहीं

  2. OracleCommandBuilder.DeriveParameters() OracleException फेंकता है:ORA-06564:ऑब्जेक्ट मौजूद नहीं है ORA-06512:SYS.DBMS_UTILITY पर

  3. जावा पैरामीटर के साथ तैयार बयान नहीं चलाता है

  4. सत्रों के लिए प्रतिशत के रूप में oracle CPU उपयोग दिखाएं

  5. अनुक्रम मौजूद नहीं है ORA-02289