欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

[再次提问]文章统计:如何样最近一周和所有文章数

更新时间: 2014-01-05 02:26:11 责任编辑: Author_N1

 

[再次提问]文章统计:怎么样最近一周和所有文章数
一个文章系统,原来是统计每个管理员发文章的总数
我用的是下面的SQL

SELECT   top   7   count(articleid)   as   Counts,Editor
FROM   Admin   INNER   JOIN   Article   ON   Admin.UserName   =   Article.Editor  
where   Article.Passed=True  
group   by   Editor  
order   by   count(articleid)   desc

显示效果:

用   户   排   行  
 
名次 用户名   文章总数  
1     bobo           20  
2     xixi           10

现在要把名次的地方换成该用户最近一周的发文章数,效果如下:

 用户名     最近一周   文章总数  
      bobo           4               20  
      xixi           6               10

用下面的SQL可以实现查询最近一周每个用户的发文章数

SELECT   top   7   count(articleid)   as   Counts,Editor  
FROM   Admin   INNER   JOIN   Article   ON   Admin.UserName   =   Article.Editor  
where   Article.Passed=True   and   DateDiff( 'd ',UpdateTime,#2007-3-21#) <7
group   by   Editor  
order   by   count(articleid)   desc

可是怎么用一条语句实现?
-------------------------------
斑竹们给的办法
SELECT  
        top   7   count(articleid)   as   Counts,
        Editor   ,
        (select   count(*)   from   Article   where   Editor=b.Editor   and   Passed=True)
FROM   Admin   as   a  
        INNER   JOIN   Article   as   b   ON   a.UserName   =   b.Editor  
where   b.Passed=True  
        and   DateDiff( 'd ',UpdateTime,#2007-3-21#) <7
group   by   Editor  
order   by   count(articleid)   desc
-----------------------------------
上面的语句有个小问题,就是如果一个用户总共发过10篇文章,可最近一周没有发过文章,查询的结果中就没有了这个用户
这个怎么解决,

我想的是,有了下面这个排行

名次 用户名   文章总数  
1     bobo           20  
2     xixi           10

在把该排行中存在的用户名的最近一周的发文章数查询出来




--参考方法--
select * from (
select UserName,nz((select count(*) from Article where a.[UserName]=Editor),0) as allcounts ,
nz((select count(*) from Article where a.[UserName]=Editor and datediff( 'd ',UpdateTime,date()) <7
),0) as weekcounts from Admin a)   order by allcounts
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:26:11
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/9797/
本文WWW.DOC100.NET DOC100.NET版权所有。