读书人

这条语句为什么出现异常

发布时间: 2011-12-20 22:26:41 作者: rapoo

这条语句为什么出现错误?
select * from (select top 10 * from TeachingResource order by newid()) order by id desc "
上面的语句为什么出现错误?
我的意图是:
通过select top 10 * from TeachingResource order by newid())先选择10条随机记录
然后应用
select * from (select top 10 * from TeachingResource order by newid()) order by id desc "根据ID字段进行降序排序,为什么出现错误?

或者
这个语句select top 10 * from TeachingResource order by newid() "能不能就直接实现按ID进行排序,如果能就不使用我的以上语句了,

[解决办法]
那是因为你排序字段不明确
select a.* from (select top 10 * from TeachingResource order by newid()) as a order by a.id desc
[解决办法]
是只需要加上一名就可以了

select * from (select top 10 * from TeachingResource order by newid()) A order by id desc

A或者任意的名字都可以

[解决办法]
SELECT * FROM (SELECT TOP 10 * FROM VideoInfo ORDER BY NEWID()) DERIVEDTBL ORDER BY Id DESC



[解决办法]
查询分析器里会自动修正的...
copy回来就可以了~
[解决办法]
同意二楼的
[解决办法]
查询分析器里面试:)
SELECT * FROM (SELECT TOP 10 * FROM VideoInfo ORDER BY NEWID()) DERIVEDTBL ORDER BY Id DESC
正解:)

读书人网 >asp.net

热点推荐