Groeperen op (SQL) - Group by (SQL)
Een GROUP BYinstructie in SQL geeft aan dat een SQL- SELECTinstructie de resultaatrijen in groepen verdeelt, op basis van hun waarden in een of meerdere kolommen. Doorgaans wordt groeperen gebruikt om een soort aggregatiefunctie voor elke groep toe te passen.
Het resultaat van een query met een GROUP BYinstructie bevat één rij voor elke groep. Dit impliceert beperkingen op de kolommen die in de bijbehorende SELECTclausule kunnen voorkomen . Als algemene regel mag de SELECTclausule alleen kolommen bevatten met een unieke waarde per groep. Dit omvat kolommen die in de GROUP BYclausule voorkomen, evenals aggregaten die resulteren in één waarde per groep.
Voorbeelden
Retourneert een lijst met afdelings-ID's samen met de som van hun verkopen voor de datum van 1 januari 2000.
SELECT DeptID, SUM(SaleAmount) FROM Sales
WHERE SaleDate = '01-Jan-2000'
GROUP BY DeptID
Retourneren van de gegevens van het voorbeeld draaitabel die antwoord op de vraag "hoeveel eenheden hebben we verkopen in elk gewest voor elk Ship Date?":
SELECT Region, Ship_Date, SUM(Units) AS Sum_of_Units
FROM FlatData
GROUP BY Region, Ship_Date
Veelvoorkomende functies voor groeperen ( aggregatie ) zijn:
- Count ( expression ) - Aantal overeenkomende records (per groep)
- Som ( uitdrukking ) - Sommatie van gegeven waarde (per groep)
- Min ( uitdrukking ) - Minimum van gegeven waarde (per groep)
- Max ( uitdrukking ) - Maximum van gegeven waarde (per groep)
- Avg ( uitdrukking ) - Gemiddelde van gegeven waarde (per groep)
Zie ook
Referenties
- ^ "SQL GROUP BY-instructie" . www.w3schools.com . Ontvangen 2020-09-18 .
- ^ shkale-msft. "GROUP BY (Transact-SQL) - SQL Server" . docs.microsoft.com . Ontvangen 2020-09-18 .
- ^ "SQL-groepering en aggregatie" . databaselecture.com . Ontvangen 2020-12-09 .
Externe links
- SQL-fragmenten: zelfstudies over SQL-functies - rijen groeperen met GROUP BY
- MySQL GROUP BY en HAVING-clausule met voorbeelden