帮忙写个SQL复合语句

来源:百度知道 编辑:UC知道 时间:2024/05/22 18:19:16
原有的语句:select top " & topuser & " * from admin where number>=0 order by number desc,id desc
这是个文章排行代码,需要修改成已审核通过的文章排行代码,即当checked=1时。
其中,数据checked在表News下,数据number在表admin下,怎样把两个表的数据结合起来??谢谢!!

你表达不太清除
按我的理解,admin是你的用户表,number字段是发帖的数量字段
news是你的文章列表,checked是是否审核
如果说的对的话你如果改成已审核通过的文章排行的话就不能用number字段了,必须计算每个用户通过审核的文章数,下面函数的number字段就是算出来的值
我假设admin表有userID字段,News表也有userID字段标识发帖用户,如果不是你可以照意思修改。

SELECT TOP " & topuser & " admin.* , COUNT(News.UserID) AS Number
FROM admin INNER JOIN News ON admin.userID = News.userID
WHERE News.checked=1
GROUP BY a.userID,.....(a中所有要显示的字段都要列出来)
ORDER BY Number desc,id desc

用Jion联接应该是可以的,只是不知道

admin是什么表,管理员表?
Number字段是什么意思?
number字段与news表中的checked字段是什么关系?

因为你表述不清楚,不好回答。

select a.number,b.checked from admin a,news b,where a.number>=0 and b.checked=1 order by a.number desc