MySql: Klauzula Having

Klauzula HAVING w SQL według ogólnego wzoru zapytań SELECT wpisywana jest po klauzuli GROUP BY. Działa ona praktycznie tak samo jak słowo kluczowe WHERE z różnicą, że przy WHERE nie mogliśmy używać funkcji grupujących oraz operować na pogrupowanych danych. Klauzula HAVING nam to wszystko umożliwia.

W skrócie funkcja ta może zostać wykorzystana na przykład do wyeliminowania grup danych, które nie spełniają podanego po niej warunku.


Ogólny zapis klauzuli HAVING wygląda następująco:
SELECT kolumna1, kolumna2 FROM tabela GROUP BY kolumna3 HAVING kolumna4 warunek logiczny;
Przykład:
SELECT IDSkoczka,Imię FROM Zawodnicy GROUP BY IDSkoczka HAVING wzrost > 160;
Analizując wiele przykładów/zadań można ułożyc sobie pewien schemat: najpierw grupowanie, potem HAVING.
Używając WHERE zamiast HAVING zostałyby pogrupowane tylko przefiltrowane wyniki, co w rezultacie mogloby nam dać zły wynik!
 

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *