哪位sql高手,帮我想一个排序的查询呗

[复制链接]
查看11 | 回复5 | 2009-3-25 16:23:56 | 显示全部楼层 |阅读模式
表一:user
字段:user_id user_name
表二:news
字段:news_id news_title user_id news_date
要求按照当天发布信息的多少对user内所有用户进行排序

回复

使用道具 举报

千问 | 2009-3-25 16:23:56 | 显示全部楼层
select a.user_id ,a.user_name ,b.news_id ,b.news_title ,b.news_datefrom user a inner join news b on a.user_id = b.user_id where b.news_date like '2009-3-3% 'group by (a.user_id) 对 2009-3-3 这一天的所有信息,利用User表中的user_id进行排序where 后面的like 也可以改写成Between '2009-3-3' and '2009-3-4'查询3到4号之间的所有数据。多看看数据库操作指令http://hi.baidu.com/j...
回复

使用道具 举报

千问 | 2009-3-25 16:23:56 | 显示全部楼层
select user_name,count from (select a.user_name user_name,count(*) count from user a,news b where a.user_id=b.user_idand news_date='年月日') cwhere order by count desc从多到少排...
回复

使用道具 举报

千问 | 2009-3-25 16:23:56 | 显示全部楼层
select count(*),user_id from news a inner join user b on a.user_id=b.user_id where datediff(d,news_date,getdate())=0 group by user_id order by count(*) desc 试一下,应该可以通过的...
回复

使用道具 举报

千问 | 2009-3-25 16:23:56 | 显示全部楼层
select [user_name],ct from [user] a,(select [user_id],news_date,count([user_id]) ct from newsgroup by [user_id],news_date) bwhere a.[user_id] = b.[user_id]order by news_dat...
回复

使用道具 举报

千问 | 2009-3-25 16:23:56 | 显示全部楼层
select user_name ,count(*) count from user u,news n where u.user_id=n.user_id group by news_date order by count desc;...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行