这样一下记录
aa
bb
cc
aa
aa
bb
dd
ff
bb表里面的记录是重复的,我想查出不重复的记录的条数.就是得到 5 ,sql怎么写呢?

解决方案 »

  1.   

    Declare @t Table(F1 varchar(10))
    Insert @t Select 'aa'
    Union All Select 'bb'
    Union All Select 'cc'
    Union All Select 'aa'
    Union All Select 'aa'
    Union All Select 'bb'
    Union All Select 'dd'
    Union All Select 'ff'
    Union All Select 'bb'Select Count(Distinct(F1)) as F1
    From @t
      

  2.   

    我的意思是我有一张表 table1,表里面有记录,但是有很很多记录时重复的,
    用select DISTINCT * from table1 我可以查出不重复的记录,我想知道这些记录的条数,怎么写?
      

  3.   

    哥们,liangpei2008(我爱世界杯) 写的一点错都没有
      

  4.   

    同意 Select Count(Distinct(F1))
      

  5.   

    你的不重复是指:
    比如aa多次出现只算一次,那么统计出来是5,就是世界杯写的那样。如果你是计算不重复的记录数即:
    aa出现多次,则不算aa,bb也出现多次,也不算bb,只算只出现过一次的,那么统计出来是 3
    写法是
    SELECT COUNT(*) FROM 
    (
    SELECT f1 FROM tb GROUP BY f1 HAVING COUNT(*)=1
    )