SQL COUNT()-funktion
- Föregående sida SQL avg()
- Nästa sida SQL first()
COUNT() funktionen returnerar antalet rader som matchar de specificerade villkoren.
SQL COUNT() syntax
SQL COUNT(column_name) syntax
COUNT(column_name) funktionen returnerar antalet värden i det specifika kolonnen (NULL räknas inte):
SELECT COUNT(column_name) FROM table_name
SQL COUNT(*) syntax
COUNT(*) funktionen returnerar antalet rader i tabellen:
SELECT COUNT(*) FROM table_name
SQL COUNT(DISTINCT column_name) syntax
COUNT(DISTINCT column_name) funktionen returnerar antalet olika värden i det specifika kolonnen:
SELECT COUNT(DISTINCT column_name) FROM table_name
Kommentar:COUNT(DISTINCT) används för ORACLE och Microsoft SQL Server, men kan inte användas för Microsoft Access.
Exempel på SQL COUNT(column_name)
Vi har följande "Orders"-tabell:
O_Id | OrderDate | OrderPrice | Customer |
---|---|---|---|
1 | 2008/12/29 | 1000 | Bush |
2 | 2008/11/23 | 1600 | Carter |
3 | 2008/10/05 | 700 | Bush |
4 | 2008/09/28 | 300 | Bush |
5 | 2008/08/06 | 2000 | Adams |
6 | 2008/07/21 | 100 | Carter |
Nu vill vi beräkna antalet beställningar för kund "Carter".
Vi använder följande SQL-sats:
SELECT COUNT(Customer) AS CustomerNilsen FROM Orders WHERE Customer='Carter'
Resultatet av ovanstående SQL-sats är 2, eftersom kund Carter har 2 beställningar:
CustomerNilsen |
---|
2 |
Exempel på SQL COUNT(*)
Om vi hoppar över WHERE-satsen, till exempel:
SELECT COUNT(*) AS NumberOfOrders FROM Orders
Resultatet ser ut ungefär så här:
NumberOfOrders |
---|
6 |
Detta är det totala antalet rader i tabellen.
Exempel på SQL COUNT(DISTINCT column_name)
Nu vill vi beräkna antalet olika kunder i "Orders"-tabellen.
Vi använder följande SQL-sats:
SELECT COUNT(DISTINCT Customer) AS NumberOfCustomers FROM Orders
Resultatet ser ut ungefär så här:
NumberOfCustomers |
---|
3 |
Detta är antalet olika kunder (Bush, Carter och Adams) i "Orders"-tabellen.
- Föregående sida SQL avg()
- Nästa sida SQL first()