ORACLE中SELECT语句中WHERE语句中,各条件的执行顺序是什么样的?

南飞雁 2001-12-03 02:45:27
ORACLE中SELECT语句中WHERE语句中,各条件的执行顺序是什么样的?比如select * from t_1 where c_1 and c_2 and c_3,c_1和c_3哪个先执行呢?
...全文
264 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
南飞雁 2001-12-03
  • 打赏
  • 举报
回复
多谢三千
KingSunSha 2001-12-03
  • 打赏
  • 举报
回复
要解释EXPLAIN和HINTS牵涉的东西太多了,<ORACLE高级管理和优化>一书中大概有三分之一的内容是讲这方面的,而且要求对ORACLE概念相当清晰.
我恐怕不能把这个问题讲清楚,你还是去仔细研究一下这本书吧,在这之前最好先看完<ORACLE CONCEPTS>
南飞雁 2001-12-03
  • 打赏
  • 举报
回复
我在《Oracle 8i初学者指南》上看到Oracle编译SQL语句是从后往前编译的,但我不知道执行的时候是什么顺序?怎么使用EXPLAIN PLAN和HINTS,三千大侠能否解释一下?
KingSunSha 2001-12-03
  • 打赏
  • 举报
回复
ORACLE在执行一句SQL之前会进行执行路径的分析,根据不同的原则(成本原则/规律原则)来确定哪一种执行路径最优化,在不同情况下,执行路径不一样(比如纪录数量/索引条件等).你可以用EXPLAIN PLAN来具体分析一句SQL的执行路径.
同时ORACLE还允许用户自己指定执行路径,称为HINTS(暗示)技术.

你光是这样问恐怕没有办法确定

2,598

社区成员

发帖
与我相关
我的任务
社区描述
Sybase相关技术讨论区
社区管理员
  • Sybase社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧