急!ASP+access多条件查询
数据库里有上千条新闻我想对最新的100条新闻进行点击数(count)排行,排出TOP10,该怎么实现呢?我用了子查询来实现,但是出了点问题,不知是BUG还是什么。。高手来...
数据库里有上千条新闻
我想对最新的100条新闻进行点击数(count)排行,排出TOP10,该怎么实现呢?我用了子查询来实现,但是出了点问题,不知是BUG还是什么。。高手来看看吧
sql="select top 10 title,url,tag,id from news where id in (select top 100 id from news order by id desc) order by count desc"
问题是:top 10会把100条记录全显示出来,但是我改成top1和top2就正常,只要大于top 3就全部显示,这是不是BUG啊?感觉理论上应该是可以实现的啊
你没看清楚我的问题,我是要对最新的100条新闻做排行,并不是对所有新闻排行。我就是先用子查询先取出最新的100条新闻 展开
我想对最新的100条新闻进行点击数(count)排行,排出TOP10,该怎么实现呢?我用了子查询来实现,但是出了点问题,不知是BUG还是什么。。高手来看看吧
sql="select top 10 title,url,tag,id from news where id in (select top 100 id from news order by id desc) order by count desc"
问题是:top 10会把100条记录全显示出来,但是我改成top1和top2就正常,只要大于top 3就全部显示,这是不是BUG啊?感觉理论上应该是可以实现的啊
你没看清楚我的问题,我是要对最新的100条新闻做排行,并不是对所有新闻排行。我就是先用子查询先取出最新的100条新闻 展开
2个回答
展开全部
我可以告诉你问题的原因!原因就是你的count值不全是唯一的(也就是说点击量有相同的),所以造成这个问题,算是access的一个bug吧!你可以改称这样试下!
sql="select top 10 title,url,tag,id from news where id in (select top 100 id from news order by id desc) order by count desc,id desc"
另外楼上的查询语句不满足楼主的要求!按着你的查询条件,是先排出浏览量追高的10条,然后在按着id的顺序排序输出,如果数据库够久,浏览量够大,按着这败戚慧种查询,永远都得不到仔歼最新的,永远是输出浏览察答量最高的那10条
sql="select top 10 title,url,tag,id from news where id in (select top 100 id from news order by id desc) order by count desc,id desc"
另外楼上的查询语句不满足楼主的要求!按着你的查询条件,是先排出浏览量追高的10条,然后在按着id的顺序排序输出,如果数据库够久,浏览量够大,按着这败戚慧种查询,永远都得不到仔歼最新的,永远是输出浏览察答量最高的那10条
展开全部
sql="select top 10 title,url,tag,id from news order by count desc,id desc" 我就想不起你为什么这样用?本来这样一句就能实现的岩猜!为什么偏要这样用呢?你祥圆的想法也只是应该,粗宴型但在语句的使用上要尽量短,所以这样的使用不多,谓词在使用时应该是子查询比较小的范围,大范围不妨试一个= any (子查询)的方式。尽量使用运算,避免使用谓词。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询