Microsoft SQL Server
Samlade funktioner
Sök…
Introduktion
Samlade funktioner i SQL Server kör beräkningar på uppsättningar av värden och returnerar ett enda värde.
Syntax
- AVG ([ALL | DISTINCT] uttryck )
- COUNT ([ALL | DISTINCT] uttryck )
- MAX ([ALL | DISTINCT] uttryck )
- MIN ([ALL | DISTINCT] uttryck )
- SUM ([ALL | DISTINCT] uttryck )
SUMMA()
Returnerar summan av numeriska värden i en given kolumn.
Vi har en tabell som visas i figuren som kommer att användas för att utföra olika aggregerade funktioner. Tabellnamnet är Marksheet .
Select SUM(MarksObtained) From Marksheet
sum
beaktar inte rader med NULL-värde i det fält som används som parameter
I exemplet ovan om vi har en annan rad som denna:
106 Italian NULL
Denna rad kommer inte att beaktas i summan beräkning
AVG ()
Returnerar genomsnittet av numeriska värden i en given kolumn.
Vi har en tabell som visas i figuren som kommer att användas för att utföra olika aggregerade funktioner. Tabellnamnet är Marksheet .
Select AVG(MarksObtained) From Marksheet
Den average
funktion anser inte rader med NULL värde i fältet som används som parameter
I exemplet ovan om vi har en annan rad som denna:
106 Italian NULL
Denna rad kommer inte att beaktas i den genomsnittliga beräkningen
MAX ()
Returnerar det största värdet i en given kolumn.
Vi har en tabell som visas i figuren som kommer att användas för att utföra olika aggregerade funktioner. Tabellnamnet är Marksheet .
Select MAX(MarksObtained) From Marksheet
MIN ()
Returnerar det minsta värdet i en given kolumn.
Vi har en tabell som visas i figuren som kommer att användas för att utföra olika aggregerade funktioner. Tabellnamnet är Marksheet .
Select MIN(MarksObtained) From Marksheet
RÄKNA()
Returnerar det totala antalet värden i en given kolumn.
Vi har en tabell som visas i figuren som kommer att användas för att utföra olika aggregerade funktioner. Tabellnamnet är Marksheet .
Select COUNT(MarksObtained) From Marksheet
count
beaktar inte rader med NULL-värde i det fält som används som parameter. Räknarparametern är vanligtvis * (alla fält) så endast om alla fält i raden är NULL kommer denna rad inte att beaktas
I exemplet ovan om vi har en annan rad som denna:
106 Italian NULL
Denna rad kommer inte att beaktas vid beräkningen
NOTERA
Funktionen COUNT(*)
returnerar antalet rader i en tabell. Detta värde kan också erhållas genom att använda ett konstant icke-null-uttryck som inte innehåller några kolumnreferenser, till exempel COUNT(1)
.
Exempel
Select COUNT(1) From Marksheet
COUNT (Column_Name) med GROUP BY Column_Name
Oftast vill vi få det totala antalet förekomst av ett kolumnvärde i en tabell till exempel:
TABELLNAMN: RAPPORTER
REPORT | ReportPrice |
---|---|
Testa | 10,00 $ |
Testa | 10,00 $ |
Testa | 10,00 $ |
Test 2 | 11,00 $ |
Testa | 10,00 $ |
Test 3 | 14,00 $ |
Test 3 | 14,00 $ |
Test 4 | 100,00 $ |
SELECT
ReportName AS REPORT NAME,
COUNT(ReportName) AS COUNT
FROM
REPORTS
GROUP BY
ReportName
RAPPORTNAMN | RÄKNA |
---|---|
Testa | 4 |
Test 2 | 1 |
Test 3 | 2 |
Test 4 | 1 |