数据库的内容如下:
T_Num            T_Name
  1                A
  2                B
  2                C
  3                D
  4                E
...现在想查到T_Num=1,3,4的结果,也就是如果T_Num里面有重复的号码出现的话(例如:2),就不需要在查询的结果出来,请问这样的查询语句该怎么写?

解决方案 »

  1.   

    select * from 表 a where T_Num in(select T_Num from 表 group by T_Num having count(*)=1)
      

  2.   

    declare @t table
    (T_Num int,T_name varchar(5)) 
      insert @t select 1,                'A' 
      insert @t select 2,                'B' 
      insert @t select 2,                'C' 
      insert @t select 3,                'D' 
      insert @t select 4,                'E'
    select T_num,max(T_name) from @t group by T_num having count(*)=1 
    (1 行受影响)
    T_num       
    ----------- -----
    1           A
    3           D
    4           E(3 行受影响)
      

  3.   

    使用 DISTINCT 去掉重复值
      

  4.   


    select * from table where T_Num not in (select T_Num from table group by T_Num having count(*)>1)