首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

sum疑问,多谢帮助

2012-01-20 
sum疑问,谢谢帮助我的sql语句是这样的selectpeerid,count(peerid)ascntfrompeeridstatwhereleft(peerid,4)

sum疑问,谢谢帮助
我的sql语句是这样的
select   peerid,count(peerid)   as   cnt   from   peeridstat   where   left(peerid,4)= '1155 '   group   by   peerid

查询结果是
peerid           cnt
X                     3
XX                   2

我就想问一下为什么我使用count计算相同peerid的个数为什么不直接输出5而是分别输出3和2呢
后面我有把sql写成这样
select   peerid,sum(count(peerid)   as   cnt)   from   peeridstat   where   left(peerid,4)= '1155 '   group   by   peerid

就出错了。

希望大家帮我解决一下,在下感激不尽~!
谢谢!

[解决办法]
因为你按peerid分组了,所以peerid不同的就会有不同的cnt.
如果想输出5的话
select count(peerid) as cnt from peeridstat where left(peerid,4)= '1155 '
[解决办法]
select A.peerid,cnt =(select count(peerid) from peeridstat B where left(B.peerid,4)=left(A.peerid,4)) from peeridstat A where left(A.peerid,4) = '1155 '

热点排行