Folosirea grupului după clauză

Rubrica: Agregarea datelor cu funcții de grup

Toate coloanele din lista SELECT. care nu sunt în funcții de grup, trebuie să fie în clauza GROUP BY.







Atunci când utilizați clauza GROUP BY. asigurați-vă că toate coloanele din lista SELECT. care nu sunt incluse în funcțiile de grup, se află în clauza GROUP BY. Exemplul din figură afișează numărul departamentului și salariul mediu pentru fiecare departament. Iată cum funcționează această instrucțiune SELECT. care conține clauza GROUP BY. se calculează:

Clauza SELECT definește coloanele care urmează să fie recepționate, după cum urmează:

Coloana numarului de departament din tabelul EMPLOYEES

Valoarea medie a tuturor salariilor din grupul pe care l-ați definit în clauza GROUP BY

Clauza FROM specifică tabelele pe care baza de date trebuie să le acceseze: tabelul EMPLOYEES.







Clauza WHERE definește rândurile care urmează să fie primite. Deoarece nu există o clauză WHERE, toate rândurile sunt preluate în mod implicit.

Clauza GROUP BY definește modul în care rândurile trebuie grupate. Rândurile sunt grupate după numărul departamentului, astfel funcția AVG. care se aplică coloanei salariale, calculează salariul mediu pentru fiecare departament.

Notă. Pentru a sorta rezultatele interogării în ordine crescătoare sau descrescătoare, includeți în interogare clauza ORDER BY.

Linii directoare pentru clauza GROUP BY

Coloana GROUP BY nu trebuie să fie în lista SELECT.

Coloana GROUP BY nu trebuie să fie în clauza SELECT. De exemplu, instrucțiunea SELECT din figură afișează salariile medii pentru fiecare departament și nu afișează numerele de departament corespunzătoare. Fără numărul departamentului, totuși, rezultatele nu arată semnificativ.

De asemenea, puteți utiliza funcția de grup în clauza ORDER BY:

SELECTați departamentul_id, AVG (salariu)
De la angajați
GROUP BY department_id
ORDINEA DE AVG (salariu);







Trimiteți-le prietenilor: