我有一Mysql数据库,要在其中一个叫users的表中查找身份证相同的那些用户,(表的具体字段为sys_rowid,name,idnum[身份证号],address)求大虾帮忙写个sql语句给我。谢谢!

解决方案 »

  1.   

    很好理解的写法:SELECT * FROM SF_User WHERE IDCard IN (SELECT IDCard FROM SF_User GROUP BY IDCard HAVING COUNT(IDCard)>1)
      

  2.   

    select *
    from users u
    where (select count(*) from users where idnum=u.idnum)>1;
    == 思想重于技巧 ==
      

  3.   

    select *
    from users u
    where idnum in (select idnum from (select idnum,count(*) from users group by idnum having count(*)>1) s)  ;
    == 思想重于技巧 ==
      

  4.   

    select u.*
    from users u inner join (select idnum,count(*) from users group by idnum having count(*)>1) s
     on u.idnum = s.idnum;
    == 思想重于技巧 ==
      

  5.   

    本帖最后由 yueliangdao0608 于 2008-03-09 23:19:20 编辑
      

  6.   

    如果您问题已经得解决,请您及时结帖给分,以感谢帮助您的朋友。 结帖方法:点击版面右上方或右下方 <管理> ,进入页面后就可以输入密码,分别给分,结帖。 
     或参考:
    http://www.csdn.net/help/over.asp
    http://topic.csdn.net/u/20080110/19/7cb462f1-cac6-4c28-848e-0a879f4fd642.html
    =============================================================================
    问题解决,请及时结贴。  
     正确结贴方法:    
     管理帖子-->给分-->输入密码-->结贴
    == 思想重于技巧 ==