Ver Mensaje Individual
  #15 (permalink)  
Antiguo 07/04/2014, 01:40
emiliochu
 
Fecha de Ingreso: marzo-2014
Mensajes: 11
Antigüedad: 10 años, 1 mes
Puntos: 0
Respuesta: consulta sacando datos de tres tablas

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Vamos a dividir esa segunda consulta en partes, para ver qué sucede:
¿Cuántos y qué registros devuelve esto:
Código MySQL:
Ver original
  1.     i.id_inmueble,
  2.     COUNT(c.codigo_inmueble_es) cuenta
  3. FROM `inmuebles` i
  4.     LEFT JOIN `tbl_servicios_inmuebles` c ON i.`id_inmueble` = `c`.`codigo_inmueble_es`
  5. WHERE TRUE OR i.`id_inmueble` IS NULL
  6. GROUP BY i.id_inmueble

Esta consulta devuelve los 69 registros que tiene la tabla inmuebles, con el numero de servicios contratados que tiene cada uno de ellos.

Esto otro:
Código MySQL:
Ver original
  1.     i.id_inmueble,
  2.     COUNT(c.codigo_inmueble_es) cuenta
  3. FROM `inmuebles` i
  4.     LEFT JOIN `tbl_servicios_inmuebles` c ON i.`id_inmueble` = `c`.`codigo_inmueble_es`
  5. WHERE i.`id_inmueble` IS NULL
  6. GROUP BY i.id_inmueble

Esta consulta devuelve un conjunto de valores vacio

Y esto también:
Código MySQL:
Ver original
  1.     c.`codigo_inmueble_es`, IFNULL(ts.id_servicio, 0) id_servicio, IFNULL(SUM(ts.valor), 0.0) totalServicio
  2. FROM `tbl_servicios_inmuebles` c
  3.     LEFT  JOIN tbl_servicios ts ON c.codigo_servicio = ts.id_servicio
  4. WHERE TRUE OR ts.id_servicio IS NULL
  5. GROUP BY c.`codigo_inmueble_es`
Esta consulta devuelve los 17 registros de la tabla inmuebles que tienen registros asociados en tbl_servicios_inmuebles y con la suma del valor de cada uno de los servicios ordenados por le id_inmueble.