SQL Tutorial

SQL HOME SQL Intro SQL Syntax SQL Select SQL Select Distinct SQL WHERE SQL Order By SQL AND SQL OR SQL NOT SQL Insert Into SQL Null Values SQL Update SQL Delete SQL Select Top SQL Min and Max SQL Count SQL Sum SQL Avg SQL Like SQL Wildcards SQL In SQL Between SQL Aliases SQL Joins SQL Inner Join SQL Left Join SQL Right Join SQL Full Join SQL Self Join SQL Union SQL Group By SQL Having SQL Exists SQL Any, All SQL Select Into SQL Insert Into Select SQL Case SQL Null Functions SQL Stored Procedures SQL Comments SQL Operators

SQL Database

SQL Create DB SQL Drop DB SQL Backup DB SQL Create Table SQL Drop Table SQL Alter Table SQL Constraints SQL Not Null SQL Unique SQL Primary Key SQL Foreign Key SQL Check SQL Default SQL Index SQL Auto Increment SQL Dates SQL Views SQL Injection SQL Hosting SQL Data Types

SQL References

SQL Keywords MySQL Functions SQL Server Functions MS Access Functions SQL Quick Ref

SQL Examples

SQL Examples SQL Editor SQL Quiz SQL Exercises SQL Bootcamp SQL Certificate

SQL. Lessons for beginners


SQL COUNT() Function

The SQL COUNT() Function

The COUNT() function returns the number of rows that matches a specified criterion.


Find the total number of products in the Products table:

FROM Products;
Try it Yourself »


SELECT COUNT(column_name)
FROM table_name
WHERE condition;

Demo Database

Below is a selection from the Products table used in the examples:

ProductID ProductName SupplierID CategoryID Unit Price
1 Chais 1 1 10 boxes x 20 bags 18
2 Chang 1 1 24 - 12 oz bottles 19
3 Aniseed Syrup 1 2 12 - 550 ml bottles 10
4 Chef Anton's Cajun Seasoning 2 2 48 - 6 oz jars 22
5 Chef Anton's Gumbo Mix 2 2 36 boxes 21.35

Add a Where Clause

You can add a WHERE clause to specify conditions:


Find the number of products where Price is higher than 20:

FROM Products
WHERE Price > 20;
Try it Yourself »

Specify Column

You can specify a column name instead of the asterix symbol (*).

If you specify a column instead of (*), NULL values will not be counted.


Find the number of products where the ProductName is not null:

FROM Products;
Try it Yourself »

Unfortunately the Products table does not have any NULL values, but we can fix that. Run the SQL statement below, and re-run the example above to see the result.


Insert a NULL value to better understand the example above:

UPDATE Products
SET ProductName = NULL
WHERE ProductName = 'Chang';
Try it Yourself »

Ignore Duplicates

You can ignore duplicates by using the DISTINCT keyword in the COUNT function.

If DISTINCT is specified, rows with the same value for the specified column will be counted as one.


How many different prices are there in the Products table:

FROM Products;
Try it Yourself »

Use an Alias

Give the counted column a name by using the AS keyword.


Name the column "number of records":

SELECT COUNT(*) AS [number of records]
FROM Products;
Try it Yourself »

Test Yourself With Exercises


Use the correct function to return the number of records that have the Price value set to 18.

FROM Products
 Price = 18;