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.
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:
(ii) Klauzula MySQL GROUP BY z funkcją SUM
Weźmy tabelę „pracownicy”, zawierającą następujące dane.
cofnij ostatnie zatwierdzenie
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:
(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:
(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:
(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: