user表中有几条记录,主键id是自增的,名字有部分记录是重复的:
id name
1 张三
2 李四
3 王五
4 张三
5 李四
当我们想按名字去重的时候sql很好写。
select distinct u.name from user u;
name
张三
李四
王五
但是当我们按整条记录查的时候怎么写呢?因为记录里面id不重复所以去重不会成功,我们改变一下sql:
select distinct count(u.name),u.* from user u group by u.name;
id name count(u.name
1 张三 2
2 李四 2
3 王五 1