Aggregera funktioner i SQL och deras användning

I den här handledningen kommer vi att diskutera de olika aggregatfunktionerna i SQL och hur vi kan använda dem. I SQL används aggregerade funktioner för att samla data från flera rader till en enda sammanfattningsrad. 

Aggregatfunktioner i SQL kan vara till stor hjälp för analytiker när de gör datasammanfattningar.

Innehållsförteckning

Vanligt använda aggregerade funktioner i SQL

Nedan visas några av de vanligaste aggregerade funktionerna i SQL .

Aggregera funktioner i SQL och deras användning

Observera att funktionerna och ofta används i valutor eller heltalsvärden. AVG-funktionen returnerar inte bara medelvärdet utan också medelvärdet av en kolumn. Dessutom är den aggregerade funktionen den enda som inte ignorerar nollvärden när man utför beräkningar.

Låt oss göra några exempelkommandon med hjälp av våra fem aggregerade funktioner med exempeltabellen nedan.

Aggregera funktioner i SQL och deras användning

Låt oss först göra ett kommando med MAX-funktionen . Låt oss säga att vi vill under kolumnen ProductName. Vårt kommando bör se ut ungefär som bilden nedan.

Aggregera funktioner i SQL och deras användning

Eftersom vi hittar den högst värderade produkten måste vi få deras priser, som finns under kolumnen Produktpris . Sätt alltid ett alias för att ge ett namn för utdatakolumnen. Om vi ​​kör det kommandot kommer det att visa oss den högst värderade produkten med bara ett värde. 

Låt oss sedan göra ett kommando med MIN-funktionen . Eftersom MIN-funktionen påminner något om MAX- funktionen använder vi bara samma exempel som vi använde i MAX-funktionen , men den här gången hittar vi den lägst värderade produkten.

Aggregera funktioner i SQL och deras användning

När vi kör det här kommandot kommer det att hämta den lägst värderade produkten i vår exempeltabell.

Låt oss nu skapa ett kommando med COUNT-funktionen . Låt oss säga att vi vill hitta mängden produkter under kolumnen ProductID . Vårt kommando bör se ut ungefär som bilden nedan.

Aggregera funktioner i SQL och deras användning

Om vi ​​kör det här kommandot kommer det att visa oss kvantiteten av varje produkt under ProduktID- kolumnen och deras respektive pris.

Aggregera funktioner och GROUP BY-klausul

Låt oss nu diskutera hur vi kan använda flera kolumner med . För att göra det måste vi använda GROUP BY-satsen .

Den används mest i aggregerade funktioner eftersom den returnerar en post från varje grupp. Alla kolumner i SELECT-satsen även utan aggregering ska fortfarande inkluderas.

Låt oss diskutera hur vi använder aggregerade funktioner med GROUP BY-satsen med vår exempeltabell nedan.

Aggregera funktioner i SQL och deras användning

Låt oss först försöka köra ett kommando utan att använda GROUP BY-satsen för att se skillnaden. Låt oss hitta det totala försäljningsbeloppet i kolumnen Produktnamn . Vårt kommando bör se ut ungefär som bilden nedan.

Aggregera funktioner i SQL och deras användning

Som du märkte, liknar kommandot de tidigare exemplen som vi nämnde i början av denna handledning. När vi väl kört det här kommandot kommer det helt enkelt att beräkna det totala beloppet under kolumnen SaleAmount , som blir 28 .

Låt oss nu ta ett annat exempel som använder GROUP BY-satsen

Aggregera funktioner i SQL och deras användning

Eftersom vi använder GROUP BY-sats , kan vi nu använda flera kolumner. Den här gången vill vi se det totala försäljningsbeloppet per kategori.

GROUP BY-satsen kommer att se till att resultatet visar en summering av försäljningen för varje kategori och om den exekveras blir resultatet bilden nedan.

I det här exemplet är det viktigt att använda GROUP BY-satsen eftersom om inte kommer ett fel att uppstå. Detta beror på att kategorin inte finns i en GROUP BY-sats eller aggregatfunktion.

Aggregera funktioner i SQL och deras användning

Låt oss ta samma exempel men den här gången får vi det totala försäljningsbeloppet efter produktnamn också. Vårt kommando bör se ut ungefär som bilden nedan.

Aggregera funktioner i SQL och deras användning

När vi har utfört vårt kommando kommer resultatet att visa summeringen av försäljningen per kategori och efter produktnamn .

Aggregera funktioner i SQL och deras användning

Kom ihåg att du inte kan använda eller komma åt flera kolumner utan att använda GROUP BY-satsen, för om du gjorde det kommer det att orsaka ett fel när du kör ditt kommando.

Aggregerade funktioner i SQL Server Management Studio (SSMS)

Låt oss nu diskutera hur vi kan använda aggregerade funktioner i . Vi använder tabellen nedan i våra exempel.

Aggregera funktioner i SQL och deras användning

Vi har 31 465 rader med data i vår SalesOrderHeader -tabell. För vårt första exempel kommer vi att visa hur vi kan använda COUNT -funktionen genom att räkna raderna i vår tabell. Vårt kommando bör se ut som bilden nedan.

Aggregera funktioner i SQL och deras användning

Vi har framgångsrikt räknat alla rader som finns i vår SalesOrderHeader och namngett den som countofrows . När vi kör det här kommandot kommer vi att ha ett resultat på 31 465 rader .

Låt oss gå tillbaka till vår datauppsättning. Medan vi använder samma aggregatfunktion , låt oss räkna hur många SalesPersonID det finns i vår tabell. Vårt kommando bör vara:

Aggregera funktioner i SQL och deras användning

När vi kör vårt kommando kommer det specifikt att hämta data under kolumnen SalesPersonsID och ger oss en kolumn som heter som countofsalespersons med resultatet 3806 .

Aggregera funktioner i SQL och deras användning

Använda aggregerade funktioner i en enda fråga

Låt oss gå vidare och diskutera hur vi kan använda flera aggregerade funktioner i en enda fråga. Vi kommer att använda funktionerna SUM , AVG och MAX för att aggregera våra kolumner TotalDue och TaxAmt

Aggregera funktioner i SQL och deras användning

Vi kan använda flera aggregerade funktioner i en enda fråga genom att sätta ett kommatecken efter varje funktion. 

Aggregera funktioner i SQL och deras användning

När vi har kört det här kommandot bör vårt resultat se ut som bilden nedan. 

Aggregera funktioner i SQL och deras användning

Nu kan vi se de olika kolumnerna tillsammans med deras respektive värde med hjälp av flera aggregerade funktioner

Låt oss försöka köra ett kommando där det kommer att orsaka ett fel för att betona varför vi ska använda GROUP BY-satsen när vi väljer kolumner. Vi kommer att använda samma exempel med flera funktioner men den här gången väljer vi CustomerID .

Aggregera funktioner i SQL och deras användning

Som du kan se står det att kommandot är ogiltigt eftersom CustomerID inte finns i vare sig aggregatfunktion eller GROUP BY-sats .

Exempelscenario med GROUP BY-klausul

För vårt nästa exempel, låt oss fixa vårt fel genom att tillhandahålla GROUP BY-satsen i vårt kommando.

Aggregera funktioner i SQL och deras användning

Vi har precis lagt till CustomerID i en GROUP BY-klausul och nu kan vi se summering, medelvärde och maximalt värde för våra TotalDue och TaxAmt av CustomerID. Vi kan också se att vi har totalt 19119 rader .

Låt oss ta vårt sista exempel genom att diskutera varför det är viktigt för oss att se till att icke-aggregerade kolumner och uttryck ingår i GROUP BY-satsen .

I vår SalesOrderHeader- tabell har vi kolumnen OrderDate . Låt oss säga att vi vill få summeringen av TotalDue efter år. Om vi ​​inte kommer att ange alla icke-aggregerade kolumner och uttryck, måste vi använda kommandot från bilden nedan.

Aggregera funktioner i SQL och deras användning

Lägg märke till hur vi kan få ett resultat snarare än ett fel. Vi har dock flera rapporter för samma år då vårt mål är att rapporterna ska sammanfattas till ett specifikt värde per år.

För att rätta till vårt misstag måste vi se till att vi inkluderar uttrycket i vår GROUP BY-sats också. Vårt nya kommando bör vara:

Aggregera funktioner i SQL och deras användning

Efter att ha kört kommandot kan vi se att vi framgångsrikt har fått summeringen av OrderDate per år. 



Slutsats

För att sammanfatta, har du lärt dig en del av de grundläggande kunskaperna om användningen av aggregerade funktioner i SQL. Aggregatfunktioner kan vara mycket idealiska när man arbetar med stora rapporter eller datauppsättningar eftersom de ger bekvämlighet för analytiker under dataanalys och sammanfattning. 

Förhoppningsvis kan den här handledningen hjälpa dig att få bättre övningar i att använda olika aggregerade funktioner i SQL. Om du vill veta mer om det här ämnet och annat relaterat innehåll kan du absolut kolla in listan med relevanta länkar nedan.

Med vänliga hälsningar,

Hafiz


Upptäck unika insikter med LuckyTemplates TOPN-funktion

Upptäck unika insikter med LuckyTemplates TOPN-funktion

Den här bloggen innehåller LuckyTemplates TOPN DAX-funktion, som gör att du kan få unika insikter från dina data, vilket hjälper dig att fatta bättre marknadsföringsbeslut.

Datamodellering i LuckyTemplates med hjälp av stödtabeller

Datamodellering i LuckyTemplates med hjälp av stödtabeller

Lär dig några fantastiska analytiska tekniker som vi kan göra för datamodellering i LuckyTemplates med hjälp av DAX-stödtabeller.

Avancerad DAX för LuckyTemplates: Implementering av rankningslogik över unika insikter

Avancerad DAX för LuckyTemplates: Implementering av rankningslogik över unika insikter

Här dyker vi in ​​i LuckyTemplates Advanced DAX och implementerar rankningslogik för att få en mycket unik insikt. Jag visar också upp måttförgrening i det här exemplet.

LuckyTemplates What-If-parameterfunktion

LuckyTemplates What-If-parameterfunktion

Den här bloggen introducerar den nya funktionen i LuckyTemplates, analysparametern What-If. Du kommer att se hur det gör allt snabbt och enkelt för din scenarioanalys.

Använd LuckyTemplates Mät förgreningar för att kontrollera om dina marginaler ökar när intäkterna växer

Använd LuckyTemplates Mät förgreningar för att kontrollera om dina marginaler ökar när intäkterna växer

Lär dig hur du avgör om din intäktstillväxt är bra genom att kontrollera om dina marginaler ökade med hjälp av LuckyTemplates mäter förgrening.

LuckyTemplates parametrar via frågeredigerare

LuckyTemplates parametrar via frågeredigerare

Lär dig och förstå hur du kan skapa och använda LuckyTemplates-parametrar som är en kraftfull funktion i frågeredigeraren.

Runda stapeldiagram – En visualisering för din instrumentpanel

Runda stapeldiagram – En visualisering för din instrumentpanel

Denna handledning kommer att diskutera hur man skapar ett runt stapeldiagram med Charticulator. Du kommer att lära dig hur du designar dem för din LuckyTemplates-rapport.

PowerApps funktioner och formler | En introduktion

PowerApps funktioner och formler | En introduktion

Lär dig hur du använder PowerApps funktioner och formler för att förbättra funktionaliteten och ändra ett beteende i vår Power Apps canvas-app.

Pipe In R: Anslutningsfunktioner med Dplyr

Pipe In R: Anslutningsfunktioner med Dplyr

I den här handledningen kommer du att lära dig hur du kopplar ihop funktioner med hjälp av dplyr-röroperatorn i programmeringsspråket R.

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX från LuckyTemplates låter dig returnera rankningen av ett specifikt nummer i varje tabellrad som utgör en del av en lista med nummer.