|
蓝森林 http://www.lslnet.com 2006年8月25日 8:28
[asp]关于发贴排行的SQL语句问题!
我有“用户表” 和 “贴子表”
我想求用户发贴排行,但是怎么试都不行,
用户表里没有记录发贴的数值。
我想动态求出数值在进行排行!下面是我的代码!
sql="select top 10 uid,uname from 用户表 where (select 贴子表.uid,count(uid),用户表.uid from 贴子表,用户表 where 贴子表.uid= 用户表.uid ) order by uid desc"
问题出在哪呢?
|
select u.uid,u.uname from (select uid,count(*) as q from 帖子表 group by uid) t inner join 用户表 u on u.uid = t.uid order by t.q desc
不知道有没有效率更高的写法 |
弄个帖子数的字段比较好哦,发一贴就加一 |
是啊,在用户表里加设一个发帖数字段好些,这样以后若有删贴,也可以通过代码实时更新有关用户的发贴数,否则你的排行更难做到。 |
谢谢各位的回贴! |
|