Tienes razón, vamos avanzando!
he corregido la consulta y quedaría así:
Código MySQL:
Ver originalSELECT i.id_inmueble
, COUNT(c.codigo_inmueble_es
) cuenta
, ts.id_servicio
, SUM(ts.valor
) totalServicio
LEFT JOIN `tbl_servicios_inmuebles` `c` ON i.
`id_inmueble` = `c`.
`codigo_inmueble_es` INNER JOIN tbl_servicios ts
ON c.codigo_servicio
= ts.id_servicio
¿Qué nos falta?
Por una parte, solo devuelve 16 filas, cuando en la tabla inmuebles hay 55 registros. Está ignorando los registros de la tabla inmuebles que no tienen servicios asociados en la tabla tbl_servicios_inmuebles.
Por otra parte, no consideramos que el campo fecha_expiracion_servicio del servicio seleccionado en el LEFT JOIN sea mayor a la fecha actual.
¿Es posible hacerlo en una sola consulta? Y más importante: Si es posible, ¿Es eficiente o al menos más eficiente que utilizar varias consultas y hacer comparaciones en php?
Gracias gnzsoloyo.