1.Groeperen door wordt alleen gebruikt, en de zoekresultaten tonen slechts één record per groep.
SELECTEER * UIT 'werknemer'; Showresultaten
Kies * uit de werknemersgroep op geslacht; Showresultaten
Er worden slechts twee records weergegeven, deze waarde is duidelijk onjuist, er wordt geen verzamelfunctie gebruikt en de weergegeven waarde is slechts de eerste data voor elke groep.
Als je data wilt groeperen en weergeven, overweeg dan om het te gebruikengroup_concat() functie,
2.Gebruikt met de group_concat()-functie,De opgegeven veldwaarden in elke groepering worden weergegeven
Kom nou
Kies geslacht,group_concat(naam) uit de werknemersgroep op geslacht;
Gebruik vervolgens de explode- en implode-functies om de data te extraheren.
3.Gebruikt met verzamelingsfuncties,Verzamelde functies omvatten count(), sum(), avg(), max() en min().
selecteer *,aantal (geslacht) als totaal uit de werknemersgroep op geslacht;
4 Gebruikt met het hebben "Met conditionele expressies", wat het uitvoerresultaat kan beperken. Alleen het resultaat van de conditionele expressie wordt weergegeven. Voorbeeld:
[kleur=wit !belangrijk]? selecteren geslacht, tellen(geslacht) van Medewerkersgroep door seks hebben telling(geslacht) >= 3;
Resultaat: [kleur=wit !belangrijk]?
| Seks | Telling (geslacht Mannelijk | 3
|
havingconditional expression" werkt op de gegroepeerde records.
5.Groeperen door meerdere velden
Selecteer * uit een medewerker uit de groep op geslacht, score;
De zoekresultaten worden eerst gegroepeerd op geslacht en daarna op score
6 metGebruik met rollup
Met rollup wordt een record toegevoegd aan het einde van alle records, wat de som is van alle bovenstaande records | Selecteer geslacht, aantal (geslacht) uit de werknemersgroep per geslacht met rollup;
|
Resultaat: [kleur=wit !belangrijk]?
| Seks | Telling (geslacht) Vrouwelijk | 1 Mannelijk | 5 null | 6
|
Als het bijvoorbeeld een string is, zal de naam een resultaat genereren van het type "Zhang San, Li Si, Wang Wu", dat wil zeggen, de som van de namen.
|