HAVING
werkt op de samengevatte rij - WHERE
werkt op de hele tafel vóór de GROUP BY
is toegepast. (U kunt GROUP BY
. niet plaatsen terzijde, HAVING
is een clausule die is gereserveerd voor gebruik met GROUP BY
- weglaten van de GROUP BY
verandert niets aan de impliciete actie die achter de schermen plaatsvindt).
Het is ook belangrijk op te merken dat daarom WHERE
kan een index gebruiken terwijl HAVING
kan niet. (In supertriviale niet-gegroepeerde resultatensets zou je theoretisch een index kunnen gebruiken voor HAVING
, maar ik heb nog nooit een query-optimalisatieprogramma op deze manier gezien).