QuesoConJamon
Gamma
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Verificado por Binance
select e.EDI_NOMBRE_EDIFICIO AS "NOMBRE EDIFICIO", c.nombre_comuna AS COMUNA, to_char(a.adm_numrun,'99g999g999') ||'-'|| a.adm_dvrun as "RUN ADMNISTRADOR",
a.ADM_PNOMBRE ||' '|| a.ADM_SNOMBRE ||' '|| a.ADM_APELLIDO_PATERNO ||' '|| a.ADM_APELLIDO_MATERNO as "NOMBRE ADMINISTRADOR",
count(d.id_edificio) as "TOTAL DEPARTAMENTOS"
from edificio e
join departamento d on (e.id_edificio=d.id_edificio)
join comuna c on (e.id_comuna=c.id_comuna)
join administrador a on (e.adm_numrun=a.adm_numrun)
join gasto_comun_pruebaestpago g on(e.ID_EDIFICIO=g.id_edificio)
group by e.edi_nombre_edificio, c.nombre_comuna, a.adm_numrun, a.adm_dvrun, a.adm_pnombre, a.adm_snombre, a.adm_apellido_paterno, a.adm_apellido_materno;
Hola, la idea del foro es que tu postees la pregunta que tienes para que otros, si tienen la misma, ya la puedan ver aquí y no la pregunten nuevamente
Buenas, gracias por comentar, sucede que mi duda es bastante extensa, tiene que ver con el uso del join y el group by sobre algo que intento hacer y no funciona, explicarlo en un post me parece algo largo, aunque de todas formas si alguien logra ayudarme posteare mi duda resumida y la respuesta
Posteala, por lo que mencionas por ahora no es nada complejo
SELECT nombre, apellido, COUNT(distribuidores.id) as cantidadDistribuidores FROM personas
JOIN distribuidores ON personas.id = distribuidores.persona
SELECT nombre, apellido, (SELECT COUNT(*) FROM distribuidores WHERE distribuidores.persona = personas.id) as cantidadDistribuidores FROM personas
Prueba reemplazas ese COUNT(*) por una subconsulta para ver si hay diferencia.
Ejemplo:
Insertar CODE, HTML o PHP:SELECT nombre, apellido, COUNT(distribuidores.id) as cantidadDistribuidores FROM personas JOIN distribuidores ON personas.id = distribuidores.persona
->
Insertar CODE, HTML o PHP:SELECT nombre, apellido, (SELECT COUNT(*) FROM distribuidores WHERE distribuidores.persona = personas.id) as cantidadDistribuidores FROM personas
select count(total_dormitorios) from departamento
join edificio using(id_edificio) where total_dormitorios=1 group by edi_nombre_edificio;
Entiendo, otra duda, mira tengo una subconsulta que me permite mostrar los departamentos que tienen solo 1 dormitorio, esto lo logro con un where, pero este hace que me genere solo 5 registros, pero mi consulta principal tiene 6 registros ya que son 6 edificios, como podria lograr que mi subconsulta tambien muestre los que tienen mas de 1 dormitorio pero que en dado caso los muestre con un 0 te adjunto la subconsulta
Insertar CODE, HTML o PHP:select count(total_dormitorios) from departamento join edificio using(id_edificio) where total_dormitorios=1 group by edi_nombre_edificio;
select CASE WHEN total_dormitorios = 1 THEN
total_dormitorios
ELSE
0
END
from departamento
join edificio using(id_edificio)
group by edi_nombre_edificio;
Con un CASE se puede realizar
Insertar CODE, HTML o PHP:select CASE WHEN total_dormitorios = 1 THEN total_dormitorios ELSE 0 END from departamento join edificio using(id_edificio) group by edi_nombre_edificio;
Con eso hacemos que si total_dormitorios es igual a 1, muestre total_dormitorios y sino, muestre 0
Con un CASE se puede realizar
Insertar CODE, HTML o PHP:select CASE WHEN total_dormitorios = 1 THEN total_dormitorios ELSE 0 END from departamento join edificio using(id_edificio) group by edi_nombre_edificio;
Con eso hacemos que si total_dormitorios es igual a 1, muestre total_dormitorios y sino, muestre 0
Utilizamos cookies y tecnologías similares para los siguientes fines:
¿Aceptas las cookies y estas tecnologías?
Utilizamos cookies y tecnologías similares para los siguientes fines:
¿Aceptas las cookies y estas tecnologías?