MySQL SELECT DISTINCT 语句

MySQL SELECT DISTINCT 语句

SELECT DISTINCT 语句用于仅返回不同的(唯一的)值。

在表中,列经常包含许多重复的值;有时您只想列出不同的(唯一的)值。

以下 SQL 从 Customers 表中选取所有不同的(唯一的)国家/地区值:

实例

SELECT DISTINCT Country FROM Customers;

亲自试一试

SELECT DISTINCT 语法

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

演示数据库

以下是 Northwind 演示数据库中 Customers 表的部分片段:

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. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 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

不带 DISTINCT 的 SELECT 示例

如果省略 DISTINCT 关键字,SQL 语句将返回 Customers 表中所有记录的所有 Country 值:

实例

SELECT Country FROM Customers;

亲自试一试

统计不同值的数量

通过将 COUNT() 函数与 DISTINCT 关键字一起使用,我们可以统计唯一值的数量。

以下 SQL 统计 Customers 表中唯一国家/地区的数量:

实例

SELECT COUNT(DISTINCT Country) FROM Customers;

亲自试一试

你将在本教程后面学习更多关于 COUNT() 函数的内容。