MySQL DISTINCT 子句用于从表中删除重复记录并仅获取唯一记录。DISTINCT 子句仅与 SELECT 语句一起使用。
句法:
SELECT DISTINCT expressions
FROM tables
[WHERE conditions];
参数
表达式:指定要检索的列或计算。
表:指定从中检索记录的表的名称。FROM 子句中必须至少列出一个表。
WHERE 条件:可选。它指定要选择的记录必须满足的条件。
笔记:
- 如果在 DISTINCT 子句中只放置一个表达式,则查询将返回该表达式的唯一值。
- 如果在 DISTINCT 子句中放置多个表达式,查询将检索列出的表达式的唯一组合。
- 在 MySQL 中, DISTINCT 子句不会忽略 NULL 值。因此,如果您在 SQL 语句中使用 DISTINCT 子句,您的结果集将包含 NULL 作为一个不同的值。
带有单个表达式的 MySQL DISTINCT 子句
如果您使用单个表达式,则 MySQL DISTINCT 子句将返回具有唯一记录(无重复记录)的单个字段。
见表:
使用以下查询:
SELECT DISTINCT address
FROM officers;
带有多个表达式的 MySQL DISTINCT 子句
如果您在 DISTINCT 子句中使用多个表达式,那么 MySQL DISTINCT 子句将从您的 SELECT 语句中的多个字段中删除重复项。
使用以下查询:
SELECT DISTINCT officer_name, address
FROM officers;