Buscar cadenas en XQuery
Este tema incluye consultas de ejemplo que muestran cómo buscar texto en documentos XML.
Ejemplos
A. Buscar descripciones de características que contengan la palabra "maintenance" en el catálogo de productos
SELECT CatalogDescription.query('
declare namespace p1="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelDescription";
for $f in /p1:ProductDescription/p1:Features/*
where contains(string($f), "maintenance")
return
$f ') as Result
FROM Production.ProductModel
WHERE ProductModelID=19
En la consulta anterior, la parte where de la expresión FLOWR filtra el resultado de la expresión for y devuelve sólo aquellos elementos que cumplen la condición contains().
El resultado es el siguiente:
<p1:Maintenance
xmlns:p1="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelWarrAndMain">
<p1:NoOfYears>10</p1:NoOfYears>
<p1:Description>maintenance contact available through your
dealer or any AdventureWorks retail store.</p1:Description>
</p1:Maintenance>
Vea también