Tengo un formato XML como el siguiente:
<a>
<b>x</b>
<b>y</b>
<b>z</b>
<c>something</c>
</a>
¿Cómo puedo usar MySQL para obtener el primer hijo de <a>
eso es un nodo <b>
? Necesito la sintaxis de MySQL para obtener el primer hijo de cierto tipo
Respuestas
1 para la respuesta № 1Puedes usar el Función MySQL ExtractValue(field,xpath)
para seleccionar los elementos dentro de su XML.
Con XPath puedes seleccionar el primer elemento con el predicado [1]
. Con su XML dado dentro de una tabla MySQL, use la siguiente selección para devolver el primer elemento dentro de <a>
:
select ExtractValue(content, "/a/*[1]") from YourTable;
Esto devolverá el valor x
. Si quieres conseguir la primera <b>
sólo tiene que utilizar esta selección:
select ExtractValue(content, "/a/b[1]") from YourTable;