Sammanfatta eller aggregera värden för alla rader i en tabell (Visual Database Tools)
gäller för:SQL Server
Aggregeringsfunktion
Med hjälp av en mängdfunktion kan du skapa en sammanfattning för alla värden i en tabell. Du kan till exempel skapa en fråga som följande för att visa det totala priset för alla böcker i tabellen titles
:
SELECT SUM(price)
FROM titles
Skapa flera aggregeringar i samma fråga med hjälp av aggregerade funktioner med mer än en kolumn. Du kan till exempel skapa en fråga som beräknar summan av kolumnen price
och genomsnittet för kolumnen discount
.
Du kan aggregera samma kolumn på olika sätt (till exempel summering, räkning och medelvärde) i samma fråga. Till exempel beräknar och sammanfattar följande fråga kolumnen price
från tabellen titles
.
SELECT AVG(price), SUM(price)
FROM titles
Om du lägger till ett sökvillkor kan du aggregera den delmängd av rader som uppfyller det villkoret.
Notera
Du kan också räkna alla rader i tabellen eller de som uppfyller ett visst villkor. Mer information finns i Count Rows in a Table (Visual Database Tools).
När du skapar ett enda aggregeringsvärde för alla rader i en tabell visar du bara själva aggregeringsvärdena. Om du till exempel summerar värdet för kolumnen price
i tabellen titles
visas inte heller enskilda rubriker, utgivarnamn och så vidare.
! Om du delsummerar – det vill säga att du skapar grupper – kan du visa kolumnvärden i varje grupp. För mer information, se Gruppera rader i Frågeresultat (Visual Database Tools).
Aggregera värden för alla rader
Kontrollera att den tabell som du vill aggregera redan finns i fönstret Diagram.
Högerklicka på bakgrunden i fönstret Diagram och välj sedan Gruppera efter på snabbmenyn. Query and View Designer lägger till en Gruppera efter kolumn i villkorsfönstrets rutnät.
Lägg till den kolumn som du vill aggregera i fönstret Villkor. Kontrollera att kolumnen är markerad för utdata.
Fråge- och vydesignern tilldelar automatiskt ett kolumnalias till den kolumn som du sammanfattar. Du kan ersätta det här aliaset med ett mer meningsfullt. Mer information finns i Skapa kolumnalias (Visual Database Tools).
I kolumnen Gruppera efter rutnät väljer du lämplig mängdfunktion, till exempel: Sum, Avg, Min, Max, Count. Om du bara vill aggregera unika rader i resultatuppsättningen väljer du en mängdfunktion med alternativen DISTINCT, till exempel Min Distinct. Välj inte Gruppera efter, Uttryckeller Where, eftersom dessa alternativ inte gäller när du aggregerar alla rader.
Fråge- och vydesignern ersätter kolumnnamnet i -instruktionen i SQL-fönstret med den mängdfunktion som du anger. SQL-instruktionen kan till exempel se ut så här:
SELECT SUM(price) FROM titles
Om du vill skapa mer än en aggregering i frågan upprepar du steg 3 och 4.
När du lägger till en annan kolumn i frågeutdatalistan eller sortera efter lista fyller fråge- och vydesignern automatiskt termen Gruppera efter i kolumnen Gruppera efter i rutnätet. Välj lämplig aggregeringsfunktion.
Lägg till eventuella sökvillkor för att ange den delmängd av rader som du vill sammanfatta.
När du kör frågan visar fönstret Resultat de aggregeringar som du har angett.
Not
Fråge- och vydesignern behåller aggregeringsfunktioner som en del av SQL-instruktionen i SQL-fönstret tills du uttryckligen inaktiverar Grupptera efter-läget. Om du ändrar frågan genom att ändra dess typ eller genom att ändra vilka tabeller eller tabellvärdesobjekt som finns i fönstret Diagram kan den resulterande frågan därför innehålla ogiltiga mängdfunktioner.
Se även
sortera och gruppera frågeresultat (Visual Database Tools)
Sammanfatta frågeresultat (Visual Database Tools)