SQL COUNT()-funktion

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.