在MySQL中,我们经常需要查询数据并去除其中的重复项。这时候我们可以使用DISTINCT关键字或GROUP BY子句来实现去重复的功能。
DISTINCT关键字
DISTINCT关键字可以用来查询不同的值,它可以用在SELECT语句中,例如:
```
SELECT DISTINCT column_name FROM table_name;
```
这条语句将会返回一个由column_name列中不同的值组成的结果集。
GROUP BY子句
GROUP BY子句可以将结果集按照指定列进行分组,例如:
```
SELECT column_name, column_nameFROM table_name GROUP BY column_name;
```
这条语句将会返回一个由column_name和column_name列组成的结果集,并且按照column_name列进行分组。
需要注意的是,使用GROUP BY子句时,SELECT语句中只能包含分组的列和聚合函数(例如SUM、AVG、COUNT等)。
示例
假设我们有一个名为students的表,它包含以下列:id、name、age、gender、major。现在我们需要查询该表中不同专业的学生人数。
使用DISTINCT关键字:
```
SELECT DISTINCT major, COUNT() FROM students GROUP BY major;
```
使用GROUP BY子句:
```
SELECT major, COUNT() FROM students GROUP BY major;
```
这两条语句将会返回相同的结果集,其中每行包含专业名称和该专业学生人数。
在MySQL中,使用DISTINCT关键字或GROUP BY子句可以轻松地实现去重复的功能。需要根据具体需求选择合适的方法。