Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Запитване за XML типове данни, които имат атрибути на xmlns възел

Ако вашият XML документ има XML пространства от имена, тогава трябва да ги вземете предвид във вашите заявки!

Така че, ако вашият XML изглежда като вашия пример, тогава имате нужда от:

-- 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)

Или ако предпочитате да имате изричен контрол върху това кое XML пространство от имена да използвате (напр. ако имате няколко), използвайте префикси на 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. SQL за получаване на данни за всеки предходен месец

  2. как да свържете sql сървър с помощта на JTDS драйвер в Android

  3. как да шифровате колоната с парола

  4. Как да възстановя изгледа в SQL Server 2008

  5. Каква е целта на репликацията на данни?