Se il tuo documento XML ha spazi dei nomi XML, devi prenderli in considerazione nelle tue query!
Quindi, se il tuo XML assomiglia al tuo campione, allora hai bisogno di:
-- 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)
Oppure, se preferisci avere un controllo esplicito su quale spazio dei nomi XML utilizzare (ad es. se ne hai più), utilizza i prefissi dello spazio dei nomi 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)