Clauza MYSQL GROUP BY este utilizată pentru a colecta date din mai multe înregistrări și pentru a grupa rezultatul pe una sau mai multe coloane. Este folosit în general într-o instrucțiune SELECT.
De asemenea, puteți utiliza unele funcții agregate, cum ar fi COUNT, SUM, MIN, MAX, AVG etc. în coloana grupată.
Sintaxă:
SELECT expression1, expression2, ... expression_n, aggregate_function (expression) FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n;
Parametrii
expresie1, expresie2, ... expresie_n: Specifică expresiile care nu sunt încapsulate într-o funcție agregată și trebuie incluse în clauza GROUP BY.
funcția_agregată: Specifică o funcție cum ar fi tabele SUM, COUNT, MIN, MAX sau AVG etc.: Specifică tabelele de unde doriți să preluați înregistrările. Trebuie să existe cel puțin un tabel listat în clauza FROM.
dependență parțială
Conditii UNDE: Este optional. Acesta precizează condițiile care trebuie îndeplinite pentru ca înregistrările să fie selectate.
(i) Clauza MySQL GROUP BY cu funcția COUNT
Luați în considerare un tabel numit tabel „ofițeri”, având următoarele înregistrări.
Acum, să numărăm numărul repetitiv de orașe din adresa coloanei.
Executați următoarea interogare:
SELECT address, COUNT(*) FROM officers GROUP BY address;
Ieșire:
(ii) Clauza MySQL GROUP BY cu funcție SUM
Să luăm un tabel tabel cu „angajați”, având următoarele date.
Acum, următoarea interogare va GROUP BY exemplul folosind funcția SUM și va returna emp_name și totalul orelor de lucru ale fiecărui angajat.
Executați următoarea interogare:
reacţionează în stilul inline
SELECT emp_name, SUM(working_hours) AS 'Total working hours' FROM employees GROUP BY emp_name;
Ieșire:
(iii) Clauza MySQL GROUP BY cu funcție MIN
Următorul exemplu specifică timpul minim de lucru al angajaților din tabelul „angajați”.
Executați următoarea interogare:
SELECT emp_name, MIN(working_hours) AS 'Minimum working hour' FROM employees GROUP BY emp_name;
Ieșire:
(iv) Clauza MySQL GROUP BY cu funcție MAX
Următorul exemplu specifică timpul maxim de lucru al angajaților din tabelul „angajați”.
format șir în java
Executați următoarea interogare:
SELECT emp_name, MAX (working_hours) AS 'Minimum working hour' FROM employees GROUP BY emp_name;
Ieșire:
(v) Clauza MySQL GROUP BY cu funcție AVG
Următorul exemplu specifică orele medii de lucru ale angajaților din tabelul „angajați”.Executați următoarea interogare:
SELECT emp_name, AVG(working_hours) AS 'Average working hour' FROM employees GROUP BY emp_name;
Ieșire: