Hola a todos, hoy os dejo una serie de ejercicios propuestos y resueltos XQUERY.
Todos los ejercicios que proponemos están resueltos en este mismo post, intenta hacerlo por ti mismo y si te quedas atascado puedes mirar la solución. Recuerda, que no tiene por que estar igual tu solución con la del post, el objetivo es que aprendas no que me copies la solución.
Sino sabéis usar el programa BaseX, os dejo un tutorial al respecto.
El XML que vamos a utilizar para estos ejercicios, lo puedes descargar aquí.
1. Muestra el nombre de todos los bailes.
|
1 2 |
for $baile in doc("bailes.xml")//bailes/baile/nombre/text() return $baile |
2. Muestra el nombre y precio de todos los bailes.
|
1 2 3 4 5 |
for $baile in doc("bailes.xml")//bailes/baile return {data($baile/nombre/text())} {data($baile/precio/text())} |
|
1 2 3 4 5 6 |
for $baile in doc("bailes.xml")//bailes/baile where $baile/number(precio) > 40 return {data($baile/nombre/text())} {data($baile/precio/text())} |
4. Mostrar los bailes ordenados por nombre.
|
1 2 3 |
for $baile in doc("bailes.xml")//bailes/baile/nombre/text() order by $baile return $baile |
5. Mostrar los nombres de los bailes que contienen una a.
|
1 2 3 |
for $baile in doc("bailes.xml")//bailes/baile/nombre/text() where contains($baile, "a") return $baile |
6. Mostrar el nombre de los bailes donde el apellido del profesor sea Lozano.
|
1 2 3 |
for $baile in doc("bailes.xml")//bailes/baile where contains($baile/profesor, "Lozano") return $baile/nombre/text() |
7. Mostrar todos los bailes, excepto el 3 y 5.
|
1 2 3 |
for $baile in doc("bailes.xml")//bailes/baile where $baile/@id != 3 and $baile/@id != 5 return $baile |
8. Mostrar profesores que den clases de bailes por una cuota mensual.
|
1 2 3 |
for $baile in doc("bailes.xml")//bailes/baile where $baile/precio/@cuota = "mensual" return $baile/profesor/text() |
9. Mostrar el nombre de los bailes de la sala 1, que se pague con euros y el precio sea menor a 35.
|
1 2 3 |
for $baile in doc("bailes.xml")//bailes/baile where $baile/sala/text() = "1" and $baile/precio/@moneda = "euro" and $baile/number(precio) < 35 return $baile/nombre/text() |
Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.
Deja una respuesta