SQL Server GROUP BY

samenvatting: in deze tutorial leert u hoe u de SQL Server GROUP BY clausule gebruikt om rijen in groepen te rangschikken op één of meer kolommen.

Introduction to SQL Server GROUP BY clause

deGROUP BY clausule stelt u in staat om de rijen van een query in groepen te rangschikken. De groepen worden bepaald door de kolommen die u opgeeft in deGROUP BY clausule.,

het volgende illustreert de syntaxis van GROUP BY:

Code language: SQL (Structured Query Language) (sql)

in deze query produceerde de GROUP BY een groep voor elke combinatie van de waarden in de kolommen in de GROUP BY clausule.

beschouw het volgende voorbeeld:

in dit voorbeeld hebben we de klant-id en het bestelde jaar van de klanten met de klant-id één en twee opgehaald.,

zoals u duidelijk kunt zien aan de output, heeft de klant met het id één bestelling geplaatst in 2016 en twee bestellingen in 2018. De klant met id two heeft in 2017 twee bestellingen geplaatst en in 2018 één bestelling.

laten we een GROUP BY clausule toevoegen aan de query om het effect te zien:

de GROUP BY clausule rangschikte de eerste drie rijen in twee groepen en de volgende drie rijen in de andere twee groepen met de unieke combinaties van de klant ID en order jaar.,

functioneel gezien leverde deGROUP BY clausule in de bovenstaande query hetzelfde resultaat op als de volgende query die deDISTINCT clausule gebruikt:

SQL Server GROUP BY clausule en aggregate functies

in de praktijk wordt deGROUP BY clausule vaak gebruikt met geaggregeerde functies voor het genereren van samenvattende rapporten.

de GROUP BY clausule rangschikt rijen in groepen en een geaggregeerde functie retourneert de samenvatting (count, min, max, average, sum, etc.,) voor elke groep.,

bijvoorbeeld, de volgende query geeft het aantal door de klant geplaatste orders per jaar terug:

Als u wilt verwijzen naar een kolom of uitdrukking die niet in de GROUP BY – clausule, u moet die kolom gebruiken als de invoer van een aggregaatfunctie. Anders krijgt u een fout omdat er geen garantie is dat de kolom of expressie een enkele waarde per groep retourneert., Bijvoorbeeld, de volgende query zal mislukken:

meer groepsgewijze bijzin voorbeelden

laten we wat meer voorbeelden nemen om te begrijpen hoe de GROUP BY clausule werkt.

gebruikmakend van groep door clausule met de COUNT() functie voorbeeld

De volgende query geeft het aantal klanten in elke stad:

In dit voorbeeld geeft de GROUP BY clausule groepeert de klanten samen per stad en de COUNT() functie geeft het aantal klanten in elke stad.,

evenzo geeft de volgende query het aantal klanten per staat en stad terug.

met Behulp van de GROUP BY-component met de MIN-en MAX-functies voorbeeld

De volgende verklaring geeft de minimale en maximale lijst met prijzen van alle producten met het model in 2018 door merk:

In dit voorbeeld is de WHERE component wordt verwerkt voordat de GROUP BY component, zoals altijd.,v>

met Behulp van de GROUP BY-component met de SOM-functie voorbeeld

Zie de volgende order_items tabel:

De volgende query gebruikt de SUM() functie om de netto waarde van elke bestelling:

In deze les hebt u geleerd hoe u de SQL Server GROUP BY component te regelen rijen in groepen door een opgegeven lijst van kolommen.,

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *