Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Meminta tipe data XML yang memiliki atribut node xmlns

Jika dokumen XML Anda memiliki ruang nama XML, maka Anda perlu mempertimbangkannya dalam kueri Anda!

Jadi jika XML Anda terlihat seperti sampel Anda, maka Anda memerlukan:

-- define the default XML namespace to use
;WITH XMLNAMESPACES(DEFAULT 'bar')
SELECT   
    x.u.value('Name[1]', 'varchar(100)') as Name
from 
    @XMLDOC.nodes('/Feed/Product') x(u)

Atau jika Anda lebih suka memiliki kontrol eksplisit atas namespace XML mana yang akan digunakan (misalnya jika Anda memiliki banyak), gunakan prefiks namespace XML:

-- define the XML namespace 
;WITH XMLNAMESPACES('bar' as b)
SELECT   
    x.u.value('b:Name[1]', 'varchar(100)') as Name
from 
    @XMLDOC.nodes('/b:Feed/b:Product') x(u)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tingkatkan penyetelan kinerja SQL Server dengan 3 tips ini

  2. Potong Tabel Dalam Transaksi

  3. T-SQL SQL Dinamis dan Tabel Temp

  4. Bagaimana saya bisa memeriksa duplikat sebelum memasukkan ke dalam tabel saat memasukkan dengan pilih

  5. Pemformatan Tanggal/Waktu Kustom di SQL Server