除非另外还指定了 TOP 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效。

xiaoxiao2021-02-28  69

视图中进行order by操作,比如 create view view_2 AS select * from book order by Price desc,Publish go

消息框会提示:除非另外还指定了 TOP 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效。

查一波发现,有人用了这样的方法:

create view view_2 AS select top 100 percent * from book order by Price desc,Publish go 运行一遍,没有用啊!!!消息框是不报错了,但是返回的结果并没有给我排序,继续查····

有人说:既然都用到视图了,干嘛还要在视图中用排序呢?视图就存了sql语句了,那我们在使用视图的时候只在视图后面指定order by不就行了。于是代码变成了下面的样子。视图里没有排序了。。。

create view view_2 AS select * from book; select * from view_2 order by Price desc,Publish go但是我就是想排序怎么办???首先算出有多少条数据,然后再用top返回···,绕了一圈,但是还是实现了视图内排序。

create view view_2 AS select top (select count(*) from book) * from book order by Price desc,Publish go

转载请注明原文地址: https://www.6miu.com/read-64603.html

最新回复(0)