Junior — Middle
Kas SQL-päringutes HAVING-klauslit saab kasutada ilma GROUP BY-otsata?
sobes.tech AI
Vastus AI-lt
Konstruktsioon HAVING kasutatakse tavaliselt gruppide filtreerimiseks, mis on loodud GROUP BY abil. Kuid mõnes andmebaasisüsteemis saab HAVING-i kasutada ka ilma GROUP BY-ta — sel juhul toimib HAVING filtrina kogu andmekogumi rakendatud agregaatfunktsioonidele.
Näiteks päring:
SELECT COUNT(*) FROM Orders HAVING COUNT(*) > 10;
toimib ja tagastab tulemuse ainult juhul, kui kirje arv on suurem kui 10.
Enamasti on HAVING ilma GROUP BY-ta haruldane ja seda saab asendada WHERE või teiste konstruktsioonidega. Parema tulemuse saamiseks kasutage HAVING-i koos GROUP BY-ga gruppide filtreerimiseks.