logo

MySQL GROUP BY sąlyga

MYSQL GROUP BY sąlyga naudojama duomenims iš kelių įrašų rinkti ir rezultatams sugrupuoti pagal vieną ar daugiau stulpelių. Paprastai jis naudojamas SELECT sakinyje.

Taip pat sugrupuotame stulpelyje galite naudoti kai kurias suvestines funkcijas, pvz., COUNT, SUM, MIN, MAX, AVG ir kt.

Sintaksė:

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

Parametrai

išraiška1, išraiška2, ... išraiška_n: Jis nurodo išraiškas, kurios nėra įtrauktos į agregatinę funkciją ir turi būti įtrauktos į GROUP BY sąlygą.

agregate_function: Nurodoma tokia funkcija kaip SUM, COUNT, MIN, MAX arba AVG ir tt lentelės: Nurodo lenteles, iš kurių norite gauti įrašus. Turi būti bent viena lentelė, nurodyta iš FROM.

KUR sąlygos: Tai neprivaloma. Jame nurodomos sąlygos, kurios turi būti įvykdytos, kad įrašai būtų atrinkti.

(i) MySQL GROUP BY sąlyga su funkcija COUNT

Apsvarstykite lentelę, pavadintą „pareigūnų“, kurioje yra šie įrašai.

MySQL grupė pagal 1 punktą

Dabar suskaičiuokime pasikartojantį miestų skaičių stulpelio adresu.

Vykdykite šią užklausą:

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

Išvestis:

MySQL grupė pagal 2 punktą

(ii) MySQL GROUP BY sąlyga su SUM funkcija

Paimkime lentelės „darbuotojų“ lentelę su šiais duomenimis.

MySQL grupė pagal 3 punktą

Dabar ši užklausa sugrupuos pagal pavyzdį naudojant funkciją SUM ir pateiks emp_name bei bendrą kiekvieno darbuotojo darbo valandų skaičių.

Vykdykite šią užklausą:

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

Išvestis:

MySQL grupė pagal 4 punktą

(iii) MySQL GROUP BY sąlyga su MIN funkcija

Toliau pateiktame pavyzdyje nurodytos minimalios darbuotojų darbo valandos iš lentelės „darbuotojai“.

Vykdykite šią užklausą:

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

Išvestis:

MySQL grupė pagal 5 punktą

(iv) MySQL GROUP BY sąlyga su MAX funkcija

Toliau pateiktame pavyzdyje nurodytos maksimalios darbuotojų darbo valandos iš lentelės „darbuotojai“.

Vykdykite šią užklausą:

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

Išvestis:

MySQL grupė pagal 6 punktą

(v) MySQL GROUP BY sąlyga su AVG funkcija

Toliau pateiktame pavyzdyje nurodytos vidutinės darbuotojų darbo valandos iš lentelės „darbuotojai“.

Vykdykite šią užklausą:

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

Išvestis:

multipleksavimas
MySQL grupė pagal 7 punktą