MYSQL GROUP BY-klausulen brukes til å samle inn data fra flere poster og gruppere resultatet etter en eller flere kolonner. Det brukes vanligvis i en SELECT-setning.
Du kan også bruke noen aggregerte funksjoner som COUNT, SUM, MIN, MAX, AVG osv. i den grupperte kolonnen.
Syntaks:
SELECT expression1, expression2, ... expression_n, aggregate_function (expression) FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n;
Parametere
uttrykk1, uttrykk2, ... uttrykk_n: Den spesifiserer uttrykkene som ikke er innkapslet i en aggregert funksjon og må inkluderes i GROUP BY-leddet.
bash if-uttalelse
samlet_funksjon: Den spesifiserer en funksjon som SUM, COUNT, MIN, MAX eller AVG etc. tabeller: Den spesifiserer tabellene hvorfra du vil hente postene. Det må være minst én tabell oppført i FROM-klausulen.
WHERE forhold: Det er valgfritt. Den spesifiserer betingelsene som må være oppfylt for at postene skal velges.
(i) MySQL GROUP BY-klausul med COUNT-funksjon
Tenk på en tabell som heter 'offisers'-tabell, som har følgende poster.
hvordan konvertere str til int
La oss nå telle gjentatte antall byer i kolonneadressen.
Utfør følgende spørring:
SELECT address, COUNT(*) FROM officers GROUP BY address;
Produksjon:
(ii) MySQL GROUP BY-klausul med SUM-funksjon
La oss ta en tabell 'ansatte' med følgende data.
java utvalg sortering
Nå vil følgende spørring GRUPPE ETTER eksemplet ved å bruke SUM-funksjonen og returnere emp_name og totale arbeidstimer for hver ansatt.
Utfør følgende spørring:
SELECT emp_name, SUM(working_hours) AS 'Total working hours' FROM employees GROUP BY emp_name;
Produksjon:
(iii) MySQL GROUP BY-klausul med MIN-funksjon
Følgende eksempel spesifiserer minimumsarbeidstiden til de ansatte fra tabellen 'ansatte'.
Utfør følgende spørring:
SELECT emp_name, MIN(working_hours) AS 'Minimum working hour' FROM employees GROUP BY emp_name;
Produksjon:
(iv) MySQL GROUP BY-klausul med MAX-funksjon
Følgende eksempel spesifiserer maksimal arbeidstid for de ansatte fra tabellen 'ansatte'.
Utfør følgende spørring:
SELECT emp_name, MAX (working_hours) AS 'Minimum working hour' FROM employees GROUP BY emp_name;
Produksjon:
programmeringsmønstre java
(v) MySQL GROUP BY-klausul med AVG-funksjon
Følgende eksempel spesifiserer gjennomsnittlig arbeidstid for de ansatte fra tabellen 'ansatte'.Utfør følgende spørring:
SELECT emp_name, AVG(working_hours) AS 'Average working hour' FROM employees GROUP BY emp_name;
Produksjon: