MySQL DISTINCT子句

时间:2019-02-04 12:52:25  来源:igfitidea点击:

MySQL DISTINCT子句用于从结果集中删除重复的数据项。DISTINCT子句只能与SELECT语句一起使用。

语法

MySQL中DISTINCT子句的语法为:

SELECT DISTINCT expressions
FROM tables
[WHERE conditions];
参数说明
expressions要查的字段或者计算式。
tables数据来源表。在FROM子句中必须至少列出一个表。
conditions用于筛选数据的条件

说明
当DISTINCT子句中只有一个expressions时,那么查询结果将返回该expressions的唯一值。
当DISTINCT子句中有多个expressions时,查询将返回所有expressions的唯一组合。
在MySQL中,DISTINCT子句不会忽略NULL值。所以结果集可能会包括NULL值。

MySQL DISTINCT子句示例

示例-只有一个expressions的DISTINCT子句

让我们看一下最简单的MySQL DISTINCT子句示例。

我们将使用MySQL DISTINCT子句返回单个字段,并从结果集中删除字段的重复项。

SELECT DISTINCT Country
FROM customers;

从客户表返回客户所在的国家,结果集中包含了null值,因为有的行没有录入country值。

sql distinct

示例-有多个expressions的DISTINCT子句

SELECT DISTINCT city, Region
FROM suppliers;

从供应商表返回每个唯一的城市和地区的组合。
在这种情况下,DISTINCT适用于在DISTINCT关键字之后列出的每个字段,因此将返回不同的组合。