Oracle
 sql >> Base de données >  >> RDS >> Oracle

Pourquoi obtenir l'erreur ORA-00937

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 =