Cómo contar las etiquetas en un XML

Hola a todos,

Tengo un archivo XML donde tengo que hacer una consulta con XQuery

< fichas>
< ficha>
< usuario>
  < nombre>nombre1< /nombre>
  < apellido>apellido1_1< /apellido>
< /usuario>
< /ficha>

< ficha>< usuario>
< nombre>nombre2< /nombre>
< apellido>apellido2_1< /apellido>
< apellido>apellido2_2< /apellido>
< /usuario>
< /ficha>
< /fichas>

¿como puedo hacer una consulta con XQuery donde diga los nombres que tengan 2 o mas apellidos?,

Ahora estoy en este punto y no consigo salir de el ni de encontrar información útil que me ayude.

for $nombre in //fichas/ficha/[apellido>1]
return $nombre

Gracias!!

Richal

Comentarios

Hola Richal, La respuesta es

Hola Richal,

La respuesta es tan obvia... fijate, si fuera con SQL usarías COUNT para contar, verdad?

Pues en XQuery quedaría algo asi...

for $nombre in //fichas/ficha/[COUNT(apellido)>1]
return $nombre

Compáralo con tu código y modifica lo que tengas que modificar...
--
saludos

cyfuss

Enviar un comentario nuevo

Smileys
:);):(:D}:):P:O:?8):jawdrop::sick:
El contenido de este campo se mantiene como privado y no se muestra públicamente.
  • Las direcciones de las páginas web y las de correo se convierten en enlaces automáticamente.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Saltos automáticos de líneas y de párrafos.
  • Textual smileys will be replaced with graphical ones.

Más información sobre opciones de formato

Captcha
Esta pregunta es para probar que el que escribe el comentario es un humano
3 + 15 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.

Tienda de música online