Digamos que tengo el siguiente código XML:Seleccionar valores distintos según nodo hijo en XQuery
<info>
<channel>
<A>
<X>
<title>title1</title>
</X>
<Y value="20"/>
</A>
</channel>
<channel>
<A>
<X>
<title>title1</title>
</X>
<Y value="20"/>
</A>
<A>
<X>
<title>title2</title>
</X>
<Y value="20"/>
</A>
</channel>
</info>
y la siguiente XQuery
{
for $A in doc('test.xml')//A
let $TITLE := $A/X/title
where string($A/Y/value) > 20
return
string($TITLE)
}
Esto, por supuesto, salidas:
title1
title1
title2
¿Cómo puedo usar distinct-values
para eliminar duplicados? Me pregunto porque for
esencialmente solo me da un artículo por iteración y no puedo llamar al distinct-values
en $A
. ¿O hay alguna otra forma de eliminar la salida duplicada?
El problema es que necesito hacer referencia a otro nodo, por lo que básicamente llamar a distinct-values(doc...)
no funciona, ya que no devuelve nodos.
+1 Por último XQuery correcta/Expresión XPath. –
¡Gracias por la actualización! ¡Lo echaré un vistazo más adelante! – slhck
@slhck entonces, ¿cómo te fue? –