最近有一个需求按照sql中的某一列值去重,还要显示其他字段的信息,
使用select distinct name, sorce from table,结果发现去重不起作用,因为MYSQL认为要sorce和name同时重复才会去除。
Google一番,反复试验最终解决办法如下:
select * from table group by name
这样就会去重,默认会取出来每个分组的第一行数据。
如果SQL语句还有limit,order by等条件,必须放在group by后面。
这样就达到了既去重,又能够输出更多字段信息的目的.
记录之,以备忘,给大家提供帮助。