MySQL DISTINCT:去重(过滤重复数据)
在使用 MySQL SELECT 语句查询数据的时候返回的是所有匹配的行。
·
在使用 MySQL SELECT 语句查询数据的时候返回的是所有匹配的行。
例如,查询 tb_students_info 表中所有 age 的执行结果如下所示。
mysql> SELECT age FROM tb_students_info;
+------+
| age |
+------+
| 25 |
| 23 |
| 23 |
| 22 |
| 24 |
| 21 |
| 22 |
| 23 |
| 22 |
| 23 |
+------+
10 rows in set (0.00 sec)
可以看到查询结果返回了 10 条记录,其中有一些重复的 age 值,有时出于对数据分析的要求,需要消除重复的记录值。这时候就需要用到 DISTINCT 关键字指示 MySQL 消除重复的记录值,语法格式为:
SELECT DISTINCT <字段名> FROM <表名>;
【实例】查询 tb_students_info 表中 age 字段的值,返回 age 字段的值且不得重复,输入的 SQL 语句和执行结果如下所示。
mysql> SELECT DISTINCT age
-> FROM tb_students_info;
+------+
| age |
+------+
| 25 |
| 23 |
| 22 |
| 24 |
| 21 |
+------+
5 rows in set (0.11 sec)
由运行结果可以看到,这次查询结果只返回了5条记录的 age 值,且没有重复的值。

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)