在开发中有很多碰到了sql查询去重的情况,有时间就把他给记录下来了。
mysql 里面提供了 DISTINCT 关键字,DISTINCT 关键字用查询的开头,DISTINCT 可以根据他后面的字段进行去重
SELECT name,password FROM `user`;
查询全部的结果是
SELECT DISTINCT name FROM `user`;
单个字段的查询可以起到作用,真实的情况一般不会只查询一个字段,
SELECT DISTINCT name,password FROM `user`;
可以看到,这不是我们想要的结果。当初这个问题我也是想了好久,前段时间才搞懂,DISTINCT 是根据 name,password 二个字段去去重的。自然就达不到想要的效果了。网上百度了一下发现,用分组可以实现去重
GROUP BY
SELECT name,password FROM `user` GROUP BY name
ok,是我想要的结果了