ASP+SQL中sql查询语句的问题

select*from(selecttop5*from(selecttop10*from建材新闻wherenewsbgid=2andok=1andtuijian=1ord... select * from (select top 5 * from (select top 10 * from 建材新闻 where newsbgid=2 and ok=1 and tuijian=1 order by id desc) where newsbgid=2 and tuijian=1 and ok=1 order by id asc) order by id desc

这条查询语句在ACCESS的数据库中就没问题,可是换SQL的数据库就不行了,在SQL查询分析器里查询,也出错,显示:
服务器: 消息 156,级别 15,状态 1,行 1
在关键字 'where' 附近有语法错误。
请问这条应该怎么修改??
展开
 我来答
百度网友b8eabee
2008-09-12 · TA获得超过127个赞
知道小有建树答主
回答量:335
采纳率:0%
帮助的人:0
展开全部
select * from 建材新闻 where EXISTS (select top 5 * from 建材新闻 where EXISTS (select top 10 * from 建材新闻 where newsbgid=2 and ok=1 and tuijian=1 order by id desc) and newsbgid=2 and tuijian=1 and ok=1 order by id asc) order by id desc

不过这段代码可以优化,最起码可以写作
select * from 建材新闻 where EXISTS (select top 5 * from 建材新闻 where EXISTS (select top 10 * from 建材新闻 where newsbgid=2 and ok=1 and tuijian=1 order by id desc) order by id asc) order by id desc

参考资料: http://bbs.dxszz.com/forum-9-1.html

郸知FO
2008-09-12 · TA获得超过306个赞
知道小有建树答主
回答量:498
采纳率:100%
帮助的人:288万
展开全部
select * from (select top 5 * from (select top 10 * from 建材新闻 where newsbgid='2' and ok='1' and tuijian='1' order by id desc) where newsbgid='2' and tuijian='1' and ok='1' order by id asc) order by id desc
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式