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

oracle में xmltype विशेषता से नाम और मूल्य प्राप्त करना

आप अपने पहले प्रयास में लगभग वहां थे। XPath का मूल्यांकन करते समय, जब आप /TableAConfig/@* के साथ विशेषता सूची के अंदर होते हैं , आपको text() . की आवश्यकता नहीं है इसके अंदर विशेषता का मूल्य प्राप्त करने के लिए। आप पहले से ही विशेषता स्तर पर हैं इसलिए केवल "डॉट" . वर्तमान नोड के लिए पर्याप्त होगा।

तो कुछ इस तरह ट्राई करें -

SELECT XMLElement("TableAConfigList",
    (SELECT
        XMLAgg(
           XMLElement("TableAConfig",
                XMLAttributes(
                    tmp."attr_name" as "name",
                    tmp."attr_text" as "value"
                )
            )
        ) from XMLTable('/TableAConfig/@*'
            passing TableA.TableA_config
            columns
               "attr_name" varchar(30) path 'name()',
               "attr_text" varchar(30) path '.'
        ) tmp
    )
) from dual

आपके पहले प्रयास से एकमात्र अंतर value . का xpath है विशेषता।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle में varchar और varchar2 में क्या अंतर है?

  2. ऑरैकल में दिनांक को टाइमस्टैम्प (डीडी-सोम-वाई वाई वाई एचएच 24:एमआई:एसएस.एफएफ प्रारूप) में कैसे परिवर्तित करें?

  3. ओरेकल - अनुक्रम के बिना अनुक्रम

  4. प्रतिशत SQL Oracle

  5. ओरेकल मूविंग एवरेज