Ver Mensaje Individual
  #33 (permalink)  
Antiguo 28/10/2008, 07:24
yazo
 
Fecha de Ingreso: abril-2003
Mensajes: 363
Antigüedad: 21 años
Puntos: 3
Respuesta: ¿Como arreglar esta consulta?

Citando la consulta que hizo jurena hace tiempo se me ha planteado una modificación:

Cita:
Iniciado por jurena Ver Mensaje
Lanza esta consulta:
SELECT * , f.id AS idflota, f.nombre AS nombreflota, f.logotipo AS logoflota, c.id AS idcoche, c.nombre AS nombrecoche, c.fotocoche AS fotocoche, c.videocoche AS videocoche, r.nombre AS nombreruta, r.id AS idruta, r.ano AS anoruta, r.opciones AS opcionesruta, tar.mes AS mestarifa, MIN( LEAST( if( tar.preciopromocion >0, tar.preciopromocion, 100000 ) , if( tar.tarifa1 >0, tar.tarifa1, 100000 ) , if( tar.tarifa2 >0, tar.tarifa2, 100000 ) , if( tar.tarifa3 >0, tar.tarifa3, 100000 ) , if( tar.tarifa4 >0, tar.tarifa4, 100000 ) , if( tar.tarifa5 >0, tar.tarifa5, 100000 ) , if( tar.tarifa6 >0, tar.tarifa6, 100000 ) , if( tar.tarifa7 >0, tar.tarifa7, 100000 ) ) ) AS tarifamenor
FROM rutas r
INNER JOIN tarifas tar ON tar.idruta = r.id
INNER JOIN flotas f ON f.id = r.idflota
INNER JOIN coches c ON c.idflota = f.id
WHERE r.id =1
AND tar.mes LIKE '10'
AND r.ano =2008
AND tar.completo !=1
AND r.oculto !=0
AND f.oculto !=0
AND TIMESTAMP( CONCAT( r.ano, '-', tar.mes, '-', tar.dia ) ) >= now( )
GROUP BY tar.id ORDER BY f.nombre, r.ano, c.nombre, r.nombre
Hola a todos,

He realizado una pequeña modificación en el sistema para que saque también la información de los puntos de parada, es decir, de las escalas.
Hay dos tablas nuevas:

Lugares:
id, nombre, información

Escalas:
id, idlugar, idruta, dia

¿Como podría hacer para sacar las rutas que tengan salida el día 1 desde el lugar con id=15 por ejemplo?

Lo he intentado poniendo en el INNER JOIN:
INNER JOIN escalas ON escalas.idruta = rutas.id
y en el WHERE:
AND escalas.idlugar = '15'
AND escalas.dia = '1'

Imagino que no hará falta usar la tabla lugares, que con la de escalas bastará.
¿Como se podría hacer?

Muchas Gracias