Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/04/2012, 05:04
Avatar de bichomen
bichomen
 
Fecha de Ingreso: junio-2003
Ubicación: Barcelona y alrededores, España
Mensajes: 877
Antigüedad: 20 años, 10 meses
Puntos: 2
Subconsultas con 3 tablas

Os pongo en contexto:

Es una aplicación de alquiler de bicicletas tipo Bicing (barcelona) donde hay estaciones que pertenecen a subzonas y operarios que trabajan por subzonas.

Los operarios se dirigen a las estaciones para suministrarlas de bicis cuando las estaciones están vacías o retirar bicis cuando las estaciones están completas. Y reparar las posibles bicis averiadas.

El caso es que los operarios reciben unas hojas de ruta, con las estaciones llenas, estaciones vacías y las bicis de su subzona averiadas.

Nos centraremos en el primer caso, estaciones llenas, el operario pasa a retirar las bicicletas de esas estaciones, en el listado le aparecerá las direcciones de esas estaciones.

Para esto trabajamos con 3 tablas:

llenas (idllenas, idmantenimiento)
mantenimiento (idmantenimiento,idestacion,idoperario,idsubzona)
estaciones (idestaciones, direccion,...)


Aclaración el idmantenimiento coincide con el idestacion

El idoperario nos viene dado al entrar en su ficha


Entonces lo que quiero obtener es la dirección de las estaciones llenas de la subzona del operario

La tabla llenas devuelve varios registros de aquí obtenemos el idmantenimiento, con lo que nos iremos a la tabla mantenimiento a consultar si esa estación pertenece o no a la subzona del operario, en el caso que así sea consultaremos la tabla estaciones para obtener la dirección.

Bueno después de soltar este tocho espero a verme explicado bien :)

Se que son subconsultas, pero me lío, a ver si me podéis ayudar, gracias


bichomen
__________________
"Se sabe con exactitud, con cuanta imprecisión, se sabe algo"
Linux Registered User #320332