Vous pouvez utiliser le .exist()
méthode - quelque chose comme ceci :
SELECT
(list of columns)
FROM
dbo.YourTable
WHERE
YourXmlColumn.exist('//Value[text()="5052095050830"]') = 1
Cela vérifie la valeur particulière que vous avez fournie. Plus vous pouvez définir précisément le XPath où cette valeur doit être trouvée, mieux c'est pour vos performances.
YourXmlColumn.exist('//Value[text()="5052095050830"]') = 1
est assez mauvais - il examine chaque <Value>
nœud n'importe où dans le XML pour trouver cette valeur.
Quelque chose comme ça :
YourXmlColumn.exist('/Attributes/ProductVariantAttribute/ProductVariantAttributeValue/Value[text()="5052095050830"]') = 1
serait beaucoup plus ciblé et donc bien meilleur pour les performances - mais ce ne serait que ces nœuds particuliers définis par cette même instruction XPath