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

SQL सर्वर में उपयोग कर XML प्रकार फ़ील्ड से मान प्राप्त करना

इसे आजमाएं:

DECLARE @test TABLE(ID INT, XmlCol XML)

INSERT INTO @test VALUES(1, '<doc>
   <quote>
      <code>AA</code>
   </quote>
   <quote>
      <code>BB</code>
   </quote>
   <quote>
      <code>CC</code>
   </quote>
</doc>')

INSERT INTO @test VALUES(2, '<doc>
   <quote>
      <code>BB</code>
   </quote>
   <quote>
      <code>AA</code>
   </quote>
   <quote>
      <code>CC</code>
   </quote>
</doc>')

SELECT
    ID,
    X.Doc.value('(quote/code)[1]', 'varchar(20)') AS 'Code1',
    X.Doc.value('(quote/code)[2]', 'varchar(20)') AS 'Code2',
    X.Doc.value('(quote/code)[3]', 'varchar(20)') AS 'Code3'
FROM @test
CROSS APPLY xmlcol.nodes('doc') AS X(Doc)

आपको इसका आउटपुट देता है:

ID  Code1   Code2   Code3
1   AA  BB  CC
2   BB  AA  CC


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. DBNull's से निपटने का सबसे अच्छा तरीका क्या है?

  2. आल्टर स्टेटमेंट का उपयोग करके SQL सर्वर में तालिका को कैसे बदलें - SQL सर्वर / T-SQL ट्यूटोरियल भाग 35

  3. तालिका प्रकार चर में कंपाउंड प्राथमिक कुंजी

  4. SQL सर्वर - अगले मिनट के लिए राउंड टाइम मान

  5. Sp_executesql . में LIKE का उपयोग करना