Grouper par manquant dans la sélection externe. Tous les non-agrégats d'une instruction select doivent être répertoriés dans le groupe par.
SELECT aname, MAX(cruisingrange)
FROM Aircraft
WHERE aid IN(SELECT aid
FROM Certified
WHERE eid in (SELECT eid
FROM Certified
GROUP BY eid
HAVING COUNT(eid) > 3) )
GROUP BY aname
;
Notez que vous avez un groupe par sur la sélection la plus interne ; mais vous semblez le manquer à l'extrême.
Je suis également d'accord voulez-vous dire in
ou equal
y aura-t-il plus d'un EID dans Certified si c'est le cas, vous aurez probablement besoin de in
contre =