logo

Klauzula GROUP BY MySQL

Klauzula MYSQL GROUP BY służy do zbierania danych z wielu rekordów i grupowania wyników według jednej lub większej liczby kolumn. Jest powszechnie używany w instrukcji SELECT.

W zgrupowanej kolumnie możesz także użyć niektórych funkcji agregujących, takich jak COUNT, SUM, MIN, MAX, AVG itp.

Składnia:

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

Parametry

wyrażenie1, wyrażenie2, ... wyrażenie_n: Określa wyrażenia, które nie są zawarte w funkcji agregującej i muszą być zawarte w klauzuli GROUP BY.

bash, pętla while

funkcja_agregująca: Określa funkcje, takie jak tabele SUM, COUNT, MIN, MAX lub AVG itp.: Określa tabele, z których chcesz pobrać rekordy. W klauzuli FROM musi znajdować się co najmniej jedna tabela.

GDZIE warunki: Jest to opcjonalne. Określa warunki, jakie muszą zostać spełnione, aby rekordy zostały wybrane.

(i) Klauzula MySQL GROUP BY z funkcją COUNT

Rozważmy tabelę o nazwie „oficers” zawierającą następujące rekordy.

Grupa MySQL według klauzuli 1

Teraz policzmy powtarzającą się liczbę miast w adresie kolumny.

Wykonaj następujące zapytanie:

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

Wyjście:

Grupa MySQL według klauzuli 2

(ii) Klauzula MySQL GROUP BY z funkcją SUM

Weźmy tabelę „pracownicy”, zawierającą następujące dane.

cofnij ostatnie zatwierdzenie
Grupa MySQL według klauzuli 3

Teraz poniższe zapytanie GRUPUJE WEDŁUG przykładu za pomocą funkcji SUM i zwraca nazwę emp_name oraz łączną liczbę godzin pracy każdego pracownika.

Wykonaj następujące zapytanie:

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

Wyjście:

Grupa MySQL według klauzuli 4

(iii) Klauzula MySQL GROUP BY z funkcją MIN

Poniższy przykład określa minimalne godziny pracy pracowników z tabeli „pracownicy”.

Wykonaj następujące zapytanie:

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

Wyjście:

Grupa MySQL według klauzuli 5

(iv) Klauzula MySQL GROUP BY z funkcją MAX

Poniższy przykład określa maksymalne godziny pracy pracowników z tabeli „pracownicy”.

czytanie z pliku csv w Javie

Wykonaj następujące zapytanie:

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

Wyjście:

Grupa MySQL według klauzuli 6

(v) Klauzula MySQL GROUP BY z funkcją AVG

Poniższy przykład określa średni czas pracy pracowników z tabeli „pracownicy”.

Wykonaj następujące zapytanie:

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

Wyjście:

Grupa MySQL według klauzuli 7