¿Hay alguna manera de hacer que este SQL sea más eficiente?
Considere las siguientes tablas:
Departamentdeptid (type:INT)
deptname (type: TEXT)
hours (type:INT)
active (type:BIT)
empleadempid (type:INT)
empname (type: TEXT)
deptid (type: INT)
designation (type: TEXT)
salary (type: INT)
Escriba una consulta para devolver las columnas empname y deptname de los empleados que pertenecen a esos departamentos que tienen un conteo de 4 o más. Los registros deben devolverse en orden alfabético de empname
Esta fue mi opinión:
SELECT e1.empname, d.deptname from employee AS e1
FULL JOIN department AS d on e1.deptid = d.deptid
WHERE e1.deptid IN(
SELECT deptid FROM(
SELECT e2.deptid, COUNT(e2.empid)
FROM employee AS e2
GROUP BY e2.deptid
HAVING COUNT(e2.empid) >= 4
)
)
ORDER BY empname;
¿Cómo mejorarías esto?