Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Zurückgeben mehrerer Zeilen aus der Abfrage einer XML-Spalte in SQL Server 2008

Sehen Sie sich die Methode .nodes() in Books Online an:

DECLARE @r TABLE (AliasesValue XML)
INSERT INTO @r 
SELECT '<aliases>   <alias>     <aliasType>AKA</aliasType>     <aliasName>Pramod Singh</aliasName>   </alias>   <alias>     <aliasType>AKA</aliasType>     <aliasName>Bijoy Bora</aliasName>   </alias> </aliases> '


SELECT c.query('data(aliasType)'), c.query('data(aliasName)')
FROM @r r CROSS APPLY AliasesValue.nodes('aliases/alias') x(c)