J'ai un XML comme ceci:
<EXP> <TITLES> <SUBTITLE CL="AXT4" FL="1" NB="Text 1"/> </TITLES> <TITLES> <SUBTITLE CL="BVT6" FL="2" NB="Text 2"/> </TITLES> <TITLES> <SUBTITLE CL="PLO7" FL="3" NB="Text 3"/> </TITLES> </EXP>
Utilisation de XQuery dans SQL Server 2008, Comment puis-je sélectionner Juste la valeur de l'atsortingbut NB dans une list, par lignes (j'ai besoin de toutes les valeurs possibles),
Exemple:
— Les sous-titres —
Texte 1
Texte 2
Texte 3
DECLARE @x xml; SET @x = N'<EXP> <TITLES> <SUBTITLE CL="AXT4" FL="1" NB="Text 1"/> </TITLES> <TITLES> <SUBTITLE CL="BVT6" FL="2" NB="Text 2"/> </TITLES> <TITLES> <SUBTITLE CL="PLO7" FL="3" NB="Text 3"/> </TITLES> </EXP> '; SELECT tcvalue(N'@NB', N'nvarchar(10)') AS Subtitles FROM @x.nodes(N'/EXP/TITLES/SUBTITLE') t(c);
L'expression des nodes
déchire en lignes et la value
récupère la valeur de la colonne.