elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Ayuda xquery xml
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda xquery xml  (Leído 2,498 veces)
martilium

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Ayuda xquery xml
« en: 3 Abril 2014, 16:53 pm »

Hola ,en un ejercicio de base de datos xquery necesito sacar el nombre de la zona,el numero de productos que tiene y la denominación del producto que tiene el mínimo stock ordenado por el nombre de zona (alfabéticamente).

tengo hecho casi todo menos el nombre de la denominación que no muestra nada.


el resultado :

Zona:Andalucía   Productes:2   Mínim stock:
Zona:Extremadura-Galicia   Productes:3   Mínim stock:
Zona:Levante-Cataluña   Productes:4   Mínim stock:
Zona:Madrid-CENTRO   Productes:4   Mínim stock:


mi código:

for $zone in distinct-values(/productos/produc/cod_zona)
let $numero := count(/productos/produc[cod_zona = $zone]/cod_prod)
let $nomzona:=/zonas/zona[cod_zona = $zone]/nombre
let $minimo :=min(/productos/produc[cod_zona = $zone]/stock_minimo)
let $deno :=/productos/produc[stock_minimo=$minimo]/denominacion
order by $nomzona ascending
return concat( 'Zona:', $nomzona,'   ',
               'Productes:', $numero,'   ',
               'Mínim stock:', $deno
)

el xml:

productos.xml:

productos>
<TITULO>DATOS DE LA TABLA PRODUCTOS</TITULO>
<produc>
<cod_prod>1010</cod_prod>
<denominacion>Placa Base MSI G41M-P26</denominacion>
<precio>50</precio>
<stock_actual>10</stock_actual>
<stock_minimo>3</stock_minimo>
<cod_zona>10</cod_zona>
</produc>
<produc>
<cod_prod>1011</cod_prod>
<denominacion>Micro Intel Core i5-2320</denominacion>
<precio>120</precio>
<stock_actual>3</stock_actual>
<stock_minimo>5</stock_minimo>
<cod_zona>10</cod_zona>
</produc>
<produc>
<cod_prod>1012</cod_prod>
<denominacion>Micro Intel Core i5 2500</denominacion>
<precio>170</precio>
<stock_actual>5</stock_actual>
<stock_minimo>6</stock_minimo>
<cod_zona>20</cod_zona>
</produc>
<produc>
<cod_prod>1013</cod_prod>
<denominacion>HD Seagate Barracuda 250GB SATA</denominacion>
<precio>80</precio>
<stock_actual>10</stock_actual>
<stock_minimo>5</stock_minimo>
<cod_zona>20</cod_zona>
</produc>
<produc>
....
....
.....




el otro xml

zonas.xml:

<zonas>
<TITULO>DATOS DE LA TABLA ZONAS</TITULO>
<zona>
<cod_zona>10</cod_zona>
<nombre>Madrid-CENTRO</nombre>
<director>Pedro Martín</director>
</zona>
<zona>
<cod_zona>20</cod_zona>
<nombre>Extremadura-Galicia</nombre>
<director>Alicia Pérez</director>
</zona>
<zona>
....
...
...

A ver si alguien se lo ocurre algo .
Gracias


Edito:me han dado la respuesta en otro sitio .pongo la solución para los que tengan un problema similar .



había que limitar la zona también en la variable $deno .

let $deno := /productos/produc[cod_zona = $zone][stock_minimo=$minimo]/denominacion


« Última modificación: 3 Abril 2014, 18:35 pm por martilium » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Ayuda] Necesito ayuda para crear un buen video uso AF y Flash.
Diseño Gráfico
XXXXXX 1 5,878 Último mensaje 11 Noviembre 2009, 00:17 am
por Sub_Cero
Ayuda por davor ayuda os ruego ayuda XD (SOLUCIONADO)
Hardware
XxRekcahlExX 6 11,276 Último mensaje 24 Mayo 2010, 00:56 am
por Aprendiz-Oscuro
AYUDA -.- ahora no entro más en 4chan (tengo una duda, ayuda por favor)
Foro Libre
Draklit 6 9,273 Último mensaje 15 Octubre 2010, 03:14 am
por Draklit
Duda con xquery
Desarrollo Web
SARGE553413 4 3,102 Último mensaje 21 Enero 2014, 06:24 am
por #!drvy
MOVIDO: Duda con xquery
Scripting
Eleкtro 0 1,707 Último mensaje 20 Enero 2014, 04:18 am
por Eleкtro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines