Manera más sencilla de hacer algo tan simple
Publicado por dai (2 intervenciones) el 01/06/2013 19:50:39
¡Hola a todos!
Estoy estudiando algo de SQL Standard y me he bloqueado con un medio problema.
Imaginemos una BD simplísima y típica:
- empleado (id, nombre, dpto)
- departamento (id, nombre)
empleado.dpto => departamento.id
Pregunta: ¿Cómo sacar el nombre del departamento con más empleados y la cantidad?
Opcion 1:
Opción 2 (dudo que funcione):
¡Y todavía me queda por sacar la cantidad!
Lo dicho, estoy medio bloqueado y no lo veo.
Tiene que haber algo más sencillo que todo esto.
Gracias!
Estoy estudiando algo de SQL Standard y me he bloqueado con un medio problema.
Imaginemos una BD simplísima y típica:
- empleado (id, nombre, dpto)
- departamento (id, nombre)
empleado.dpto => departamento.id
Pregunta: ¿Cómo sacar el nombre del departamento con más empleados y la cantidad?
Opcion 1:
1
2
3
4
5
6
7
8
SELECT departamento.nombre
FROM departamento INNER JOIN departamento.id=empleado.dpto
WHERE departamento.id = ( SELECT empleado.dpto
FROM empleado
GROUP BY COUNT(*)
HAVING COUNT(*) = ( SELECT MAX(COUNTt(*) )
FROM empleado
GROUP BY empleado.dpto) )
Opción 2 (dudo que funcione):
1
2
3
4
5
6
SELECT departamento.nombre
FROM departamento, empleados
WHERE (empleado.dpto=departamento.id) AND
( SELECT MAX(COUNT(*)
FROM empleado
GROUP BY empleado.dpto) )
¡Y todavía me queda por sacar la cantidad!
Lo dicho, estoy medio bloqueado y no lo veo.
Tiene que haber algo más sencillo que todo esto.
Gracias!
Valora esta pregunta


0