bugl
bugl
HomeLearnPatternsPathsSearch
HomeLearnPatternsPathsSearch

Loading lesson path

Learn/SQL/SQL Tutorial
SQL•SQL Tutorial

SQL SELECT DISTINCT Statement

Flash cards

Review the key moves

1/4
Core idea

What is the main idea behind SQL SELECT DISTINCT Statement?

Lesson checks

Practice each idea before moving on

Short Mimo-style checks built from this lesson's code, terms, and sequence.

1Quick choice

Which statement best captures the main point of this lesson?

2Fill blank

Complete the missing token from the example code.

___ DISTINCT Country FROM Customers;
3Order

Put the learning moves in the order that makes the concept easiest to apply.

SELECT Example Without DISTINCT
SELECT DISTINCT Syntax
The SQL SELECT DISTINCT Statement

The SQL SELECT DISTINCT Statement

The SELECT DISTINCT statement is used to return only distinct (unique) values.

In a table, a column may contain several duplicate values - and sometimes you want to list only the unique values.

Example

SELECT DISTINCT Country FROM Customers;

SELECT DISTINCT Syntax

SELECT DISTINCT column1 , column2, ... FROM table_name ;

Demo Database

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

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.05021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.05023Mexico
4Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

SELECT Example Without DISTINCT

If you omit the DISTINCT keyword, the SQL statement returns the "Country" value from all the records of the "Customers" table:

Example

SELECT Country FROM Customers;

Count Distinct Values

By using the COUNT() function with the DISTINCT keyword, we can count the number of unique countries.

Example

SELECT COUNT(DISTINCT Country) FROM Customers;

Note

The COUNT(DISTINCT column_name ) is not supported in Microsoft Access databases.

Here is a workaround for MS Access:

Example

SELECT Count(*) AS DistinctCountries
FROM (SELECT DISTINCT Country FROM Customers);

You will learn more about the COUNT() function later in this tutorial.

Previous

SQL SELECT Statement

Next

SQL WHERE Clause