The instruction SELECT DISTINCT is used to return only distinct (different) values.
Within a table, a column often contains many repeating values; sometimes you just need to list distinct (different) values.
SELECT DISTINCT column1, column2, ...
FROM table_name
The following is a sample from the "Customers" table of the "Northwind" database:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 5021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 5023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
The following SQL statement selects all values (including duplicates) from the "Country" ("Country") column in the "Customers" table:
Run SQLSELECT Country FROM Customers
Now let's use the instruction SELECT DISTINCT and see the result.
The following SQL statement selects only distinct values from the "Country" ("Country") column in the "Customers" table:
Run SQLSELECT DISTINCT Country FROM Customers
The following SQL statement displays the number of different (unique) customer countries:
Run SQLSELECT COUNT(DISTINCT Country) FROM Customers