现有表:TEST_TBL
有字段:ID,NAME,DEPT,AGE,SAL
想得到 同部门同名 数据。
SQL应该怎么写?

解决方案 »

  1.   

    select distince a.* from test_tbl a,test_tbl b where a.name=b.dept
      

  2.   

    a.name = b.dept 不理解!!
    怎么姓名和部门名画等号呢?
      

  3.   

    select dept,name,count(*)
    from TEST_TBL 
    group by dept,name
    having count(*)>1
      

  4.   

    SELECT distinct * FROM TEST_TBL,(SELECT NAME,DEPT FROM TEST_TBL GROUP BY NAME,DEPT HAVING COUNT(*)>1) tmp WHERE TEST_TBL.NAME = temp.NAME;
      

  5.   

    你说的同部门同名 是什么意思   是说在同一个部门里 有两个人的名字相同吗,  DEPT = DEPT AND NAME = NAME在ID唯一(主键)的情况下:SELECT A.NAME,A.DEPT FROM TEST_TBL A,TEST_TBL B WHERE A.DEPT = B.DEPT AND A.NAME = B.NAME AND A.ID <> B.ID
      

  6.   

    select T.NAME,T.DEPT from TEST_TBL t
    group by T.NAME ,T.DEPT 
    having count(1) > 1