sql >> Databasteknik >  >> RDS >> Sqlserver

SQL:Hur kan jag få värdet av ett attribut i XML-datatypen?

Använd XQuery:

declare @xml xml =
'<email>
  <account language="en" />
</email>'

select @xml.value('(/email/account/@language)[1]', 'nvarchar(max)')
declare @t table (m xml)

insert @t values 
    ('<email><account language="en" /></email>'), 
    ('<email><account language="fr" /></email>')

select m.value('(/email/account/@language)[1]', 'nvarchar(max)')
from @t

Utdata:

en
fr


  1. Vilken är standardvalsordningen i PostgreSQL eller MySQL?

  2. MySQL får rader men föredrar ett kolumnvärde framför ett annat

  3. Laravel 5.3:Syntaxfel eller åtkomstöverträdelse:1463 Icke-grupperande fält 'distans' används i HAVING-satsen

  4. Mysql Skapa databas med specialtecken i namnet