Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/01/2013, 18:30
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Consulta agrupar por ID

Creo que estás complicando innecesariamente la consulta.
Si Instalaciones depende de Reserva, como parece, lo que correspondería hacer es un INNER JOIN, que te devolvería el resultado buscado.
Por supuesto que estoy suponiendo que esas dos tablas están relacionadas entre sí por medio de un campo llamado id_instalacion, y que la tabla Reservas contiene todos los pedidos o algo así, mientras que Instalaciones contendría los trabajos efectivamente realizados.
Eso podría dar un resultado como:
Código MySQL:
Ver original
  1. SELECT R.id_instalacion, (SUM(1) - SUM(I.cantidad)) disponibles
  2. FROM reservas INNER JOIN instalaciones ON R.id_instalacion = I.id_instalacion
  3.     (R.fecha_entrada BETWEEN '2013-01-25' AND '2013-01-27')
  4.     OR (fecha_salida BETWEEN '2013-01-25' AND '2013-01-27')
  5. GROUP BY R.id_instalacion;

Obviamente, si mis suposiciones no son correctas tendrás que decirnos qué es lo que se supone que representa cada tabla y qué tipo de resumen estás tratando de obtener de ellas.

Lo que si te puedo afirmar es que el planteo de consulta que haces no resulta optimizado.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)