U kunt de .exist()
. gebruiken methode - zoiets als dit:
SELECT
(list of columns)
FROM
dbo.YourTable
WHERE
YourXmlColumn.exist('//Value[text()="5052095050830"]') = 1
Hiermee wordt vergeleken met die specifieke waarde die u hebt opgegeven. Hoe nauwkeuriger u de XPath kunt definiëren waar die waarde naar verwachting zal worden gevonden, hoe beter voor uw prestaties.
YourXmlColumn.exist('//Value[text()="5052095050830"]') = 1
is behoorlijk slecht - het onderzoekt elke afzonderlijke <Value>
knooppunt ergens in de XML om die waarde te vinden.
Zoiets als dit:
YourXmlColumn.exist('/Attributes/ProductVariantAttribute/ProductVariantAttributeValue/Value[text()="5052095050830"]') = 1
zou veel gerichter zijn en dus veel beter voor de prestaties - maar het zou alleen die specifieke knooppunten zijn die worden gedefinieerd door diezelfde XPath-instructie