SELECT viviendas.codigo AS vivienda_codigo, nucleos.codigo AS nucleo_codigo, r.tipo_documento, r.numero_documento, CONCAT(r.primerNombre," ",r.primerApellido) AS nombre_representante, viviendas.barrio, viviendas.sector, viviendas.ucg, viviendas.mz_catastral, COUNT(i.id) AS n_integrantes, dimhabitat.tiempo_habitar, dimhabitat.tenencia, dimhabitat.valor_arriendo, dimhabitat.area, dimhabitat.tipo_vivienda, dimhabitat.estado_vivienda, dimhabitat.condgenerales, dimhabitat.vacceso, IF(dimhabitat.ppiso,'AL','NO') AS H3, dimhabitat.mpiso, IF(dimhabitat.pparedes,'AL','NO') AS H4, dimhabitat.mparedes, IF(dimhabitat.ptechos,'AL','NO') AS H5, dimhabitat.mtechos, IF(dimhabitat.pagua,'AL','NO') AS H6, dimhabitat.fagua, IF(dimhabitat.psaneamiento,'AL','NO') AS H7, dimhabitat.tsaneamiento, IF(dimhabitat.pasinamiento,'AL','NO') AS H8, dimhabitat.nhabitaciones, IF(dimhabitat.habitacionesc,'Compartido','Exclusivo') AS habitacionesc, dimhabitat.ncocinas, IF(dimhabitat.cocinac,'Compartido','Exclusivo') AS cocinac, dimhabitat.nbanos, IF(dimhabitat.banosc,'Compartido','Exclusivo') AS banosc, dimhabitat.ncomedores, IF(dimhabitat.comedoresc,'Compartido','Exclusivo') AS comedoresc, dimhabitat.nsalas, IF(dimhabitat.salac,'Compartido','Exclusivo') AS salac, dimhabitat.nlavaderos, IF(dimhabitat.lavaderosc,'Compartido','Exclusivo') AS lavaderosc, dimhabitat.npatios, IF(dimhabitat.patiosc,'Compartido','Exclusivo') AS patiosc, dimhabitat.otrose, IF(dimhabitat.otrosc,'Compartido','Exclusivo') AS otrosc, IF(dimhabitat.pnegocio,'SI','NO') AS pnegocio, dimhabitat.area_negocio, IF(dimhabitat.neghabitacion,'SI','NO') AS neghabitacion, IF(dimhabitat.negcocina,'SI','NO') AS negcocina, IF(dimhabitat.negsala,'SI','NO') AS negsala, IF(dimhabitat.negpatio,'SI','NO') AS negpatio, IF(dimhabitat.negterraza,'SI','NO') AS negterraza, IF(dimhabitat.negpublico,'SI','NO') AS negpublico, IF(dimhabitat.sacueducto,'SI','NO') AS sacueducto, IF(dimhabitat.senergia,'SI','NO') AS senergia, IF(dimhabitat.stelefonia,'SI','NO') AS stelefonia, IF(dimhabitat.sgas,'SI','NO') AS sgas, IF(dimhabitat.saseo,'SI','NO') AS saseo, IF(dimhabitat.salumbrado,'SI','NO') AS salumbrado, IF(dimhabitat.drogas,'SI','NO') AS drogas, IF(dimhabitat.basuras,'SI','NO') AS basuras, IF(dimhabitat.aguas_residuales,'SI','NO') AS aguas_residuales, IF(dimhabitat.animales,'SI','NO') AS animales, IF(dimhabitat.escorrentia,'SI','NO') AS escorrentia, IF(dimhabitat.deslizamiento,'SI','NO') AS deslizamiento, IF(dimhabitat.subsidio_compra,'SI','NO') AS subsidio_compra, IF(dimhabitat.subsidio_mejoras,'SI','NO') AS subsidio_mejoras, IF(dimhabitat.subsidio_legalizacion,'SI','NO') AS subsidio_legalizacion, IF(dimhabitat.subsidio_vivienda,'SI','NO') AS subsidio_vivienda, IF(dimhabitat.postulado_compra,'SI','NO') AS postulado_compra, IF(dimhabitat.postulado_mejoras,'SI','NO') AS postulado_mejoras, IF(dimhabitat.postulado_legalizacion,'SI','NO') AS postulado_legalizacion, IF(dimhabitat.postulado_vivienda,'SI','NO') AS postulado_vivienda FROM viviendas INNER JOIN nucleos ON nucleos.vivienda_id=viviendas.id
INNER JOIN foliosnucleos ON foliosnucleos.nucleo_id=nucleos.id
INNER JOIN dimhabitat ON dimhabitat.folionucleo_id = foliosnucleos.id
INNER JOIN integrantes AS r ON r.id=nucleos.representante_id
INNER JOIN integrantes AS i ON i.nucleo_id=nucleos.id
GROUP BY nucleos.id