日期:2014-05-19  浏览次数:20641 次

求一条SQL语句~~~高手帮帮忙~~~
表allip中的记录

id         ip                       sid
1           127.0.0.1           a
2           127.0.0.2           a
3           127.0.0.3           a
4           127.0.0.1           a
5           127.0.0.4           b
6           127.0.0.1           a
7           127.0.0.5           c
8           127.0.0.6           d

现在我求sid=a的所有唯一IP数量的总和(就是一个ip只能出现一次)
得到的值应该是3

我用
select   count(ip)   as   c   from   allip   where   sid= 'a '   group   by   ip
得到的答案是每一个ip的数量而不是他们的总和,sql该怎么写呢?求教高人~~~~~~~~~~~~~~~


------解决方案--------------------
select count(distinct ip) as c from allip where sid= 'a '
------解决方案--------------------
select count(distinct ip) as c from allip where sid= 'a '