T1: employé [id, salaire]Inner Join: Est-ce une solution optimale?
T2: département [nom, employeeid] (employeeid est une clé étrangère à l'id T1)
Problème: Ecrire une requête pour aller chercher le nom du département qui reçoit le salaire maximum.
Ma solution:
SELECT DISTINCT name
FROM department AS a
INNER JOIN employee AS b ON a.employeeid = b.id
AND b.salary
IN (
SELECT max(salary)
FROM employee AS c
)
Edit: L'énoncé du problème est exact, et nous ne sommes pas essayer de trouver l'employé qui a le salaire le plus élevé. Il est dit ".... Département qui reçoit .....", pas "... employé qui reçoit ...".
Est-ce correct? Ou cela peut-il être optimisé?
Quelle base de données et la version que vous utilisez? –
Êtes-vous censé trouver un département dans lequel travaille l'employé avec le salaire maximum, ou le département dont les membres ont la somme maximum des salaires? Parce que votre code en dit un, et votre texte l'autre. –
Et, est-ce un devoir? –