Duda sql

Hola ginel, ¿me puedes ayudar con esto?
Tengo las siguientes tablas, relacionadas tal y como aparecen:
 Vivienda (Portal_pk, tipo_vivienda)
 Edificio (Portal_pk, cod_tramo_fk)
 Tramo (Cod_tramo_pk, cod_calle_fk)
 Calle (Cod_calle_pk, nombre_barrio_fk)
 Barrio (nombre_barrio_pk, cod_calle_fk)
Me piden:
Dado un barrio, obtener el TIPO DE VIVIENDA QUE MÁS PREDOMINA.
 He probado con esta select pero no me funciona:
Agradecería tu ayuda, es importante.

1 Respuesta

Respuesta
1
Mas o menos la estructura seria esta: con esto sacas los tipos de vivienda
select a.tipo_vivienda
from vivienda a, edificio b, tramo c, calle d, barrio e
where e.barrio=variable_barrio
and e.cod_calle=d.cod_calle
and d.cod_calle=c.cod_calle
and c.cod_tramo=b.cod_tramo
and b.portal=a.portal
para que te lo muestre con un contador por tipo de vivienda bastaria con en el select poner:
select count(*), a.tipo_vivienda
y al final de la select poner un group by a.tipo_vivienda
Con eso sacas LOS tipos de vivienda que más predominan, pero me piden EL TIPO DE VIVIENDA QUE MÁS PREDOMINA (debe devolverme un valor único), por ejemplo, ático.
Pues es tan fácil como añadir a la select que tienes esto:
select max(contador), tipo_vivienda from
   (select count(*) contador, a.tipo_vivienda tipo vivienda
     ....
   group by a.tipo_vivienda )
group by tipo_vivienda

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas