码迷,mamicode.com
首页 > 数据库 > 详细

查询数据库中所有名称相同的记录

时间:2017-05-07 00:07:07      阅读:278      评论:0      收藏:0      [点我收藏+]

标签:有用   name   color   数据   用户名   用户表   group by   style   class   

昨天遇到了一个问题,查询用户表中所有用户名相同的记录。这个问题乍看很简单,但是细想起来没那么容易。头脑的第一反应就是读取一个条数据之后循环查找有没有相同的,
如下: select u1.
* from M_User u1,M_User u2 where u1.Name = u2.Name and u1.rowid <> u2.rowid
发现,当用户名相同的记录多余两个的时候会出现问题,每条记录会被查询出两次。比如id为1、
2、3条记录的Name都是user1,那么1和3、2和3、1和2会被查询出来,
也就是每条记录被查出来两次。这样是不行的,所以又回头想sql语句。 可以使用group by 来做。 复制代码 select
* from M_USER where Name in (select Name ss from M_USER where IsDeleted=0 group by Name having count(*)> 1 )

 

查询数据库中所有名称相同的记录

标签:有用   name   color   数据   用户名   用户表   group by   style   class   

原文地址:http://www.cnblogs.com/mr-wuxiansheng/p/6819035.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!