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

怎么统计数目

2012-02-02 
如何统计数目今天看到题问如何统计发贴数和回帖数?库是bbsDB发贴表bbsTopic回帖表bbsReply表如下bbsUserUI

如何统计数目
今天看到题问如何统计发贴数和回帖数?库是bbsDB发贴表bbsTopic回帖表bbsReply
表如下
bbsUser
UID           Uname         Upassword     Uemail           Usex   Uclass             Uremark       UregDate  
bbsTopic
TID         TsID         TuID         TreplyCount     Tface     Ttopic             Tcontents    
bbsReply
RID                   RtID                 RsID                 RuID                 Rface               Rcontents
如何统计Uname= 'xx '发贴数和回帖数?
还有我是新手不知道看什么书好希望大家推荐下,谢谢了   !


[解决办法]
select t1.uname,t1.发贴数,t2.回帖数 from
(select uname,count(*) 发贴数 from bbsUser a,bbsTopic b where a.uid = b.tuid and b.uname = 'xx ') t1,
(select uname,count(*) 回帖数 from bbsUser a,bbsReply b where a.uid = b.tuid and b.uname = 'xx ') t2
where t1.uname = t2.uname
[解决办法]

select st=(select count(*) from bbstopic a left join bbsuser b on b.uid=a.tuid where b.uname= 'XX '),
sr=(select count(*) from bbsReply a left join bbsuser b on b.uid=a.RuID where b.uname= 'XX ')
[解决办法]
--建議用count(1)或count(主鍵),要比count(*)快
select t1.uname,t1.发贴数,t2.回帖数 from
(select uname,count(1) 发贴数 from bbsUser a,bbsTopic b where a.uid = b.tuid and b.uname = 'xx ') t1,
(select uname,count(1) 回帖数 from bbsUser a,bbsReply b where a.uid = b.ruid and b.uname = 'xx ') t2
where t1.uname = t2.uname

热点排行