Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Extraction de la valeur nvarchar de XML dans T-SQL :un seul caractère renvoyé

N'utilisez pas nvarchar sans taille. À partir de la documentation :

Si vous ne connaissez pas la longueur exacte, vous pouvez toujours utiliser nvarchar(max) :

declare @criteria xml;
set @criteria = N'<criterion id="DocName"><value>abcd</value></criterion>';

declare @val nvarchar(max);
set @val = @criteria.value('(criterion[@id="DocName"]/value)[1]', 'nvarchar(max)');

select @val;

démo de violon SQL