logo

MySQL GROUP BY klausul

MYSQL GROUP BY-klausulen bruges til at indsamle data fra flere poster og gruppere resultatet efter en eller flere kolonner. Det bruges generelt i en SELECT-sætning.

Du kan også bruge nogle aggregerede funktioner som COUNT, SUM, MIN, MAX, AVG osv. i den grupperede kolonne.

Syntaks:

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

Parametre

udtryk1, udtryk2, ... udtryk_n: Det specificerer de udtryk, der ikke er indkapslet i en aggregeret funktion og skal inkluderes i GROUP BY-udtrykket.

jsp

aggregeret_funktion: Den specificerer en funktion såsom SUM, COUNT, MIN, MAX eller AVG osv. tabeller: Den specificerer tabellerne, hvorfra du vil hente posterne. Der skal være mindst én tabel i FROM-sætningen.

HVOR forhold: Det er valgfrit. Den specificerer de betingelser, der skal være opfyldt, for at posterne kan vælges.

(i) MySQL GROUP BY-klausul med COUNT-funktion

Overvej en tabel med navnet 'officer'-tabel med følgende optegnelser.

java ende for loop
MySQL-gruppe efter klausul 1

Lad os nu tælle gentagne antal byer i kolonneadressen.

Udfør følgende forespørgsel:

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

Produktion:

MySQL-gruppe efter klausul 2

(ii) MySQL GROUP BY-klausul med SUM-funktion

Lad os tage en tabel 'medarbejdere' med følgende data.

fjedermoduler
MySQL-gruppe efter klausul 3

Nu vil følgende forespørgsel GRUPPERE EFTER eksemplet ved hjælp af SUM-funktionen og returnere emp_name og den samlede arbejdstid for hver medarbejder.

Udfør følgende forespørgsel:

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

Produktion:

MySQL-gruppe efter klausul 4

(iii) MySQL GROUP BY-klausul med MIN-funktion

Følgende eksempel angiver minimumsarbejdstiden for medarbejderne fra tabellen 'medarbejdere'.

Udfør følgende forespørgsel:

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

Produktion:

MySQL-gruppe efter klausul 5

(iv) MySQL GROUP BY-klausul med MAX-funktion

Følgende eksempel angiver den maksimale arbejdstid for medarbejderne fra tabellen 'medarbejdere'.

Udfør følgende forespørgsel:

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

Produktion:

programmeringsmønstre i java
MySQL-gruppe efter klausul 6

(v) MySQL GROUP BY-klausul med AVG-funktion

Følgende eksempel angiver den gennemsnitlige arbejdstid for medarbejderne fra tabellen 'medarbejdere'.

Udfør følgende forespørgsel:

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

Produktion:

MySQL-gruppe efter klausul 7