logo

Клауза MySQL GROUP BY

Клаузата MYSQL GROUP BY се използва за събиране на данни от множество записи и групиране на резултата по една или повече колони. Обикновено се използва в оператор SELECT.

Можете също да използвате някои агрегатни функции като COUNT, SUM, MIN, MAX, AVG и т.н. в групираната колона.

Синтаксис:

 SELECT expression1, expression2, ... expression_n, aggregate_function (expression) FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n; 

Параметри

израз1, израз2, ... израз_n: Той определя изразите, които не са капсулирани в агрегатна функция и трябва да бъдат включени в клаузата GROUP BY.

пр. потребителско име

агрегатна_функция: Той определя функция като SUM, COUNT, MIN, MAX или AVG и т.н. таблици: Той определя таблиците, откъдето искате да извлечете записите. Трябва да има поне една таблица, посочена в клаузата FROM.

КЪДЕ условия: Не е задължително. Той определя условията, които трябва да бъдат изпълнени, за да бъдат избрани записите.

(i) Клауза MySQL GROUP BY с функция COUNT

Помислете за таблица с име 'офицери', която има следните записи.

java колекция рамка
MySQL група по клауза 1

Сега нека преброим броя на повтарящите се градове в колоната адрес.

Изпълнете следната заявка:

 SELECT address, COUNT(*) FROM officers GROUP BY address; 

Изход:

MySQL група по клауза 2

(ii) Клауза MySQL GROUP BY с функция SUM

Нека вземем таблица 'служители', която има следните данни.

java за типове цикли
MySQL група по клауза 3

Сега следната заявка ще ГРУПИРА ПО примера с помощта на функцията SUM и ще върне emp_name и общото работно време на всеки служител.

Изпълнете следната заявка:

 SELECT emp_name, SUM(working_hours) AS 'Total working hours' FROM employees GROUP BY emp_name; 

Изход:

MySQL група по клауза 4

(iii) Клауза MySQL GROUP BY с функция MIN

Следващият пример определя минималното работно време на служителите от таблицата 'employees'.

Изпълнете следната заявка:

 SELECT emp_name, MIN(working_hours) AS 'Minimum working hour' FROM employees GROUP BY emp_name; 

Изход:

MySQL група по клауза 5

(iv) Клауза MySQL GROUP BY с функция MAX

Следващият пример определя максималното работно време на служителите от таблицата 'employees'.

Изпълнете следната заявка:

 SELECT emp_name, MAX (working_hours) AS 'Minimum working hour' FROM employees GROUP BY emp_name; 

Изход:

може ли Android да играе gamepigeon
MySQL група по клауза 6

(v) Клауза MySQL GROUP BY с функция AVG

Следващият пример посочва средното работно време на служителите от таблицата 'employees'.

Изпълнете следната заявка:

 SELECT emp_name, AVG(working_hours) AS 'Average working hour' FROM employees GROUP BY emp_name; 

Изход:

MySQL група по клауза 7