MySQL的Distinct使用遇到的坑

在工作中的使用MySQL的DISTINCT遇到了一点小坑,大概的现象为:

1、查询dede_scores表:select * from dede_scores,查询到的数据为:

MySQL的Distinct使用遇到的坑

 

2、如果使用查询语句去重integral字段:select distinct integral from dede_scores; 查询到的结果为:

MySQL的Distinct使用遇到的坑

3、如果使用查询语句去重titles、integral字段: select distinct titles, integral from dede_scores; 查询到的结果为:

MySQL的Distinct使用遇到的坑

我们要的去重效果没有出现;

原因:distinct关键字应用与所有的列而不仅是前置它的列,如果给出select distinct titles, integral ,除非指定的两个列都不同,否则所有的行都将为检索出来。