logo

Klauzula MySQL GROUP BY

Klauzula MYSQL GROUP BY sa používa na zhromažďovanie údajov z viacerých záznamov a zoskupovanie výsledkov podľa jedného alebo viacerých stĺpcov. Vo všeobecnosti sa používa v príkaze SELECT.

V zoskupenom stĺpci môžete použiť aj niektoré súhrnné funkcie ako COUNT, SUM, MIN, MAX, AVG atď.

Syntax:

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

Parametre

výraz1, výraz2, ... výraz_n: Špecifikuje výrazy, ktoré nie sú zapuzdrené v rámci agregačnej funkcie a musia byť zahrnuté v klauzule GROUP BY.

agregovaná_funkcia: Určuje funkciu, ako sú tabuľky SUM, COUNT, MIN, MAX alebo AVG atď.: Určuje tabuľky, z ktorých chcete získať záznamy. V klauzule FROM musí byť uvedená aspoň jedna tabuľka.

KDE podmienky: Je to voliteľné. Špecifikuje podmienky, ktoré musia byť splnené pre výber záznamov.

int na reťazec v jazyku Java

(i) Klauzula MySQL GROUP BY s funkciou COUNT

Uvažujme o tabuľke s názvom „tabuľka dôstojníkov“ s nasledujúcimi záznamami.

Skupina MySQL podľa klauzuly 1

Teraz spočítajme opakujúci sa počet miest v stĺpci adresa.

dĺžka java reťazca

Vykonajte nasledujúci dotaz:

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

Výkon:

Skupina MySQL podľa bodu 2

(ii) Klauzula MySQL GROUP BY s funkciou SUM

Zoberme si tabuľku „zamestnanci“ s nasledujúcimi údajmi.

Skupina MySQL podľa bodu 3

Teraz nasledujúci dotaz zoskupí príklad pomocou funkcie SUM a vráti názov_emp_name a celkový pracovný čas každého zamestnanca.

Vykonajte nasledujúci dotaz:

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

Výkon:

Skupina MySQL podľa bodu 4

(iii) Klauzula MySQL GROUP BY s funkciou MIN

Nasledujúci príklad špecifikuje minimálny pracovný čas zamestnancov z tabuľky „zamestnanci“.

Vykonajte nasledujúci dotaz:

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

Výkon:

Skupina MySQL podľa článku 5

(iv) Klauzula MySQL GROUP BY s funkciou MAX

Nasledujúci príklad špecifikuje maximálny pracovný čas zamestnancov z tabuľky „zamestnanci“.

vymazať posledný commit git

Vykonajte nasledujúci dotaz:

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

Výkon:

Skupina MySQL podľa článku 6

(v) Klauzula MySQL GROUP BY s funkciou AVG

Nasledujúci príklad špecifikuje priemerný pracovný čas zamestnancov z tabuľky „zamestnanci“.

Vykonajte nasledujúci dotaz:

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

Výkon:

Skupina MySQL podľa článku 7