Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Odpytywanie typów danych XML, które mają atrybuty węzła xmlns

Jeśli twój dokument XML zawiera przestrzenie nazw XML, musisz wziąć je pod uwagę w swoich zapytaniach!

Jeśli więc Twój kod XML wygląda jak próbka, potrzebujesz:

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

Lub jeśli wolisz mieć wyraźną kontrolę nad tym, której przestrzeni nazw XML użyć (np. jeśli masz wiele), użyj prefiksów przestrzeni nazw 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. Jak zainstalować Azure Data Studio na komputerze Mac

  2. Programowo kopiuj indeksy z jednej tabeli do drugiej w SQL Server

  3. jak pobrać dane z bieżącego tygodnia tylko na serwerze SQL?

  4. OR Operator Zwarcie w SQL Server

  5. Instalacja Business Intelligence Development Studio 2008