Existe uma maneira de tornar esse SQL mais eficiente?
Considere as seguintes tabelas:
departamentodeptid (type:INT)
deptname (type: TEXT)
hours (type:INT)
active (type:BIT)
empregadoempid (type:INT)
empname (type: TEXT)
deptid (type: INT)
designation (type: TEXT)
salary (type: INT)
Escreva uma consulta para retornar as colunas empname e deptname dos funcionários pertencentes aos departamentos que possuem uma contagem de 4 ou mais. Os registros devem ser retornados em ordem alfabética do empname
Esta foi a minha opinião:
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;
Como você melhoraria isso?