在SQL查询中,我们经常需要对结果进行去重操作,以消除重复的记录。数据库中,我们可以使用DISTINCT关键字来实现这个目的。DISTINCT关键字能够返回唯一不重复的值,让我们能够轻松地获取去重后的数据集。
DISTINCT关键字的使用方法如下:
在SELECT语句中使用DISTINCT关键字,后面跟上需要去重的列名,例如:
SQL
复制
SELECT DISTINCT 列名 FROM 表名;
可以将DISTINCT关键字与聚合函数一起使用,例如COUNT、SUM、AVG等,语法如下:
SQL
复制
SELECT 聚合函数(DISTINCT 列名) FROM 表名;
举例说明:
假设有一个学生表student,包含字段和数据如下:
id name gender age
1 张三 男 18
2 李四 女 19
3 王五 男 20
4 赵六 女 18
5 张三 男 21
如果想查询学生表中所有的姓名,可以使用以下语句:
SELECT name FROM student;
查询结果中会包含重复的记录,如张三出现了两次。
如果想去除重复记录,只显示不同的姓名,可以使用DISTINCT关键字:
SELECT DISTINCT name FROM student;
查询结果中只包含不同的姓名,重复的张三被去除了。
如果想查询学生表中有多少个不同的姓名,可以使用COUNT函数和DISTINCT关键字:
SELECT COUNT(DISTINCT name) FROM student;
查询结果显示学生表中有4个不同的姓名。
DISTINCT关键字还可以用在多个列上,表示查询结果中这些列的组合不能重复。例如,如果想查询学生表中不同的姓名和性别组合,可以使用以下语句:
SELECT DISTINCT name, gender FROM student;
查询结果中只包含不同的姓名和性别组合。