SQL去重有几种方法?分别是什么?有什么区别?
时间: 2023-12-17 13:06:08 浏览: 135
MySQL去重的方法整理
SQL去重有多种方法,下面给你列举几种常用的方法:
1. DISTINCT关键字
使用SELECT DISTINCT语句可以从表中选择不同的值,即去除重复数据。例如:
```
SELECT DISTINCT name FROM student;
```
2. GROUP BY语句
使用GROUP BY语句可以将相同的数据分组,然后对每组数据进行操作。例如:
```
SELECT name FROM student GROUP BY name;
```
3. HAVING语句
HAVING语句可以在GROUP BY语句后面添加,用于筛选分组后的数据。例如:
```
SELECT name, COUNT(*) FROM student GROUP BY name HAVING COUNT(*) > 1;
```
4. UNION操作符
使用UNION操作符可以将两个或多个SELECT语句的结果组合在一起,并去除重复的数据。例如:
```
SELECT name FROM student
UNION
SELECT name FROM teacher;
```
这四种方法的区别在于使用场景和效率。DISTINCT适用于简单的去重操作,GROUP BY和HAVING适用于需要对数据分组进行统计分析的场景,而UNION适用于需要将多个结果集合并在一起去重的场景。在实际使用中,应根据具体情况选择合适的方法。
阅读全文