Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Warum bekomme ich den Fehler ORA-00937

Fehlende Gruppierung nach in äußerer Auswahl. Alle Nicht-Aggregate in einer Select-Anweisung müssen in der Gruppe by aufgelistet werden.

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 
;

Beachten Sie, dass Sie eine Gruppierung nach auf der innersten Auswahl haben; aber du scheinst es am äußersten zu vermissen.

Ich stimme auch zu, meinst du in oder equal Wird mehr als eine EID in Certified sein, wenn ja, benötigen Sie wahrscheinlich in vs =