SQL 查询 7天内 发表文章 数量 最多的10个用户 条件栏目id=2

2025-04-28 10:05:45
推荐回答(4个)
回答1:

用易点CMS做的吧!嘿嘿。

SELECT TOP 10 *
FROM (SELECT COUNT(UserId) AS diancms, UserName, userid
FROM D_U_Article
WHERE (DATEDIFF([day], AddTime, GETDATE()) <= 7) and LanMu_Id=2
GROUP BY UserId, UserName) DianCMSTable
ORDER BY diancms DESC

此代码是测试过的,希望对你有用。

回答2:

select top 10
用户名称,栏目,count(文章ID)分类发帖数
from U_Article
where 添加日期 between '查询起始日期' and '查询截止日期' --*
and 栏目='条件栏目' --这里=2
group by 用户名称,栏目
order by count(文章ID) desc --逆序

*注
如果用一个时间(截止时间)来反推起始时间,这行要这样:
where 添加日期 between dateadd(day,-6,'截止时间')
and dateadd(day,1,'截止时间')

另外,这里的条件包含[栏目],所以是分栏下数量最多,并不一定是总数最多.

回答3:

SELECT TOP 10 *
FROM (SELECT COUNT(UserId) AS id2 , UserName, userid
FROM 表名 WHERE (DATEDIFF([day], AddTime, GETDATE()) <= 7) and LanMu_Id=2
GROUP BY UserId, UserName) 表名 ORDER BY id2 DESC

回答4:

select top 10 用户名称 from 表 where 条件栏目id=2 and sum(文章id) as count group by 用户名称 order by count;
可能有点毛病 没有表 没法调试