SQL Select 语句 Select 和 Order by执行顺序是怎样的?
网上查了些,都说先执行Select 那为什么 Order by 可以对非Select 字段进行排序????
栗子:select id,name from tb_student order by age
select 先执行没错,有结果了再来排序,个人觉得可以这样想,select 查询出来后,在显示id和name之前,先对age进行排序(这时所有的字段都还存在)
正巧今天碰到一个sql的存储过程需要优化就顺便研究了下。Sql语句的执行顺序其实是如下的:
Select C.customerid, COUNT(O.orderid) AS numorders 7
FROM dbo.Customers AS C 1、
LEFT OUTER JOIN dbo.Orders AS O 2、
ON C.customerid = O.custo......
答案就在这里:关于Sql关键字SELECT FROM GROUP ORDER 等的执行顺序问题的解释
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?
select是做投影操作,除了select后面的列以外,其他列仅仅是不显示而已,其他的列仍然可以访问,所以order by可以按年龄排序