读书人

查询语句执行顺序求解释,该如何处理

发布时间: 2013-11-08 17:52:32 作者: rapoo

查询语句执行顺序,求解释
select top 30 * from t where price>40 order by price
先取price>40再排序然后取前30条记录吗?

[解决办法]
取price>40的记录,然后按price升序排序,取其前30条.
[解决办法]
先where 再order by,然后在集合中选30条
[解决办法]
select top 30 * from (select * from t where price>40) order by price
先取price>40再排序然后取前30条记录
[解决办法]
不一定是“总是”,比如你没有top,那么最后是order by
[解决办法]
select top 30 * from t where price>40 order by price

你说的是对的。

1、where条件price>40 先把符合要求的数据,选出来

2、对选出来的数据,进行排序 也就是 order by price

3、最后再选出30条,也就是 top 30

读书人网 >SQL Server

热点推荐