Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/01/2013, 16:42
kirianky
 
Fecha de Ingreso: julio-2011
Mensajes: 7
Antigüedad: 12 años, 9 meses
Puntos: 0
Pregunta Consulta agrupar por ID

Buenas a todos,

Primero quiero dar las gracias de antemano por la ayuda que me podáis ofrecer. Mi duda/consulta es la siguiente.

A través de esta consulta:
Código MySQL:
Ver original
  1. SELECT id_instalacion, COUNT( * ) AS disponibles
  2.     SELECT *
  3.     FROM `reservas`
  4.     WHERE `fecha_entrada`
  5.     BETWEEN '2013-01-25'
  6.     AND '2013-01-27'
  7.     OR `fecha_salida`
  8.     BETWEEN '2013-01-25'
  9.     AND '2013-01-27'
  10. ) AS t
  11. GROUP BY id_instalacion
  12. SELECT id_instalacion, cantidad FROM instalacion
  13. ORDER BY id_instalacion
Obtengo estos resultado:

Código MySQL:
Ver original
  1. id_instalacion     disponibles
  2.      1               3
  3.      1              10
  4.      2              1
  5.      2              10
  6.      3              10
  7.      4              10
  8.      5              10
  9.      6              10
  10.      7              4
O también puedo conseguir (con el -COUNT() ), lo siguiente:

Código SQL:
Ver original
  1. id_instalacion     disponibles
  2.      1               -3
  3.      1              10
  4.      2              -1
  5.      2              10
  6.      3              10
  7.      4              10
  8.      5              10
  9.      6              10
  10.      7              4
El caso es que me gustaría saber si ha alguna manera de poder agrupar por 'id_instalacion', es decir que solo aparezca un registro de cada 'id_instalacion', pero restando los valores de la columna 'disponibles'. En este ejemplo de resultados sería algo así:

Código MySQL:
Ver original
  1. id_instalacion     disponibles
  2.      1              7
  3.      2              9
  4.      3              10
  5.      4              10
  6.      5              10
  7.      6              10
  8.      7              4
También decir que no solo pasaría con las dos primeras instalaciones, sino que podría haber un registro repetido de cada. Es si, solo se repetirá una vez por que agrupo las instalaciones reservadas para esas fechas.

He intentado explicarme con la mayor claridad posible, espero que se entienda un poco la idea de lo que intento conseguir. Si no, preguntarme por favor. A ver si alguien puede echarme un cable lo antes posible, muchas gracias de nuevo a todos. Saludos.

Última edición por gnzsoloyo; 28/01/2013 a las 18:16 Razón: SQL mal etiquetado.