Bei Oracle ist mir vor Jahren mal ein View um die Ohren geflogen, als ich von 9 auf 10 umgestellt habe. Die Group By Anweisung im "Original" war tatsächlich falsch, lief aber immer klaglos.
Ich würde mich da nicht am Bestand orientieren, sondern an den aktuellen
SQL Standards bzw. der zugehörigen Dokumentation der verwendeten Oracle Version. Die dürfte da keine Unklarheiten lassen.
1 group by
2 having
Vielleicht gibt es Sonderfälle, wo aufgrund der Select Clause (nur Aggregate) kein Group by notwendig ist und dann ein having kommen kann.
P.S.: Gerade nachgeschaut, die Reihenfolge bei Oracle ist offiziell egal. Surprise! Dann würde ich dennoch dem allgemeinen Standard folgen.