- salariul mediu al organizației și variația acesteia (varianța).
Cu toate acestea, astfel de informații sintetizate cel mai frecvent solicitate nu este pentru întreaga masă, și pentru anumite seturi (grupuri) de rânduri din tabel.
Pentru a putea fi grupate în funcție de orice atribut Rânduri de tabel în instrucțiunea SELECT are o oferta speciala GROUP BY. care specifică coloana (sau coloanele) pentru gruparea. Această ofertă include un rând de tabel de valori de coloane gruparea urmată de suprimarea valorilor duplicate în coloanele de grupare, adică, Acesta permite de a defini un subset de coloane de valori în ceea ce privește cealaltă coloană și aplicată funcției de subseturi de agregare primite.
Să presupunem că doriți să găsiți salariile maxime ale angajaților minime și în unitățile, atunci puteți scrie
Clauză GROUP BY ar trebui să vină după clauza WHERE, în cazul în care acesta din urmă este prezent în instrucțiunea SELECT. Fiecare rând din tabel rezultat se referă la un grup de linii. Numărul de grupe depinde de numărul de valori diferite în grupuri de coloane (în acest caz DEPNO). funcțiile agregate sunt aplicate fiecărui grup ca un set separat.
funcțiile agregate pot fi utilizate atunci când se alătura mese. Să presupunem că trebuie să știți câți angajați lucrează la fiecare poziție în fiecare departament, ceea ce este suma salariilor și împărțirea salariului mediu. Apoi, aveți nevoie de o interogare
Funcții SUM (), COUNT (), AVG () suma calculată, numărul de linii din grup și valoarea medie în grupul de rânduri.
În SQL, puteți specifica condiții de căutare pentru un grup de rânduri. Pentru a face acest lucru într-o declarație SELECT, există o clauză HAVING. care trebuie să urmeze o grupare Propoziția. AVÂND specifică o condiție de căutare pentru un grup de rânduri.
Să presupunem că aveți nevoie pentru a obține un răspuns la aceeași întrebare, ca și în exemplul anterior, dar fiecare echipă trebuie să fie format din cel puțin doi angajați.
Condiția de căutare în clauza HAVING exclude din grupul de masă rezultat care conține cel puțin doi muncitori.
Astfel, sunt introduse pentru diferite opțiuni de comandă SQL SELECT.