oracle查询语句执行顺序

Posted ZouShangxiong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle查询语句执行顺序相关的知识,希望对你有一定的参考价值。

完整的查询语句类似是这样的:

select ..., ROWNUM
  from table
 where <where clause>
 group by <columns>
having <having clause>
 order by <columns>;

它的处理顺序是:

  1. 首先,执行 FROM/WHERE 语句
  2. 为结果赋予 ROWNUM 并同时根据 FROM/WHERE 语句进行 rownum 过滤
  3. 执行 SELECT
  4. 执行 GROUP BY
  5. 执行 HAVING
  6. 执行 ORDER BY

PS: 如果存在分析函数(row_number etc),那么,分析函数的执行会在 order by 之前。

以上是关于oracle查询语句执行顺序的主要内容,如果未能解决你的问题,请参考以下文章

oracle查询语句执行顺序

sql语句执行顺序、

通过讨论Oracle 中sql语句的执行顺序,判断哪里可以使用定义过的别名

SQL语句执行流程与顺序原理解析

Oracle数据库执行查询语句报错:无效数字。

SQL语句执行顺序