社区
Sybase
帖子详情
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哪个先执行呢?
...全文
271
4
打赏
收藏
ORACLE中SELECT语句中WHERE语句中,各条件的执行顺序是什么样的?
ORACLE中SELECT语句中WHERE语句中,各条件的执行顺序是什么样的?比如select * from t_1 where c_1 and c_2 and c_3,c_1和c_3哪个先执行呢?
复制链接
扫一扫
分享
转发到动态
举报
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(暗示)技术.
你光是这样问恐怕没有办法确定
MySQL和
Oracle
中
where
条件
语句
的
执行顺序
面试的时候你可能遇到过面试官提出:SQL的书写顺序,SQL的执行(解析)顺序,WHERE
条件
执行顺序
等问题。这篇文章就简要总结下上面的几个问题。 一、MySQL
中
SQL的书写顺序和
执行顺序
sql编写顺序:
select
distinct…from…join…on…where…group by…having…order by…limit… sql解析顺序: from…on…join…where…group by…having…
select
distinct…order by…limit… 二、MySQL和O
sql
语句
where 后
条件
执行先后顺序
结论如下: 1. 针对mysql,其
条件
执行顺序
是 从左往右,自上而下 2. 针对orcale,其
条件
执行顺序
是从右往左,自下而上 mysql where
执行顺序
是从左往右执行的,在数据量小的时候不用考虑,但数据量多的时候要考虑
条件
的先后顺序,此时应遵守一个原则:排除越多的
条件
放在第一个 在用MySQL查询数据库的时候,连接了很多个过滤
条件
,发现非常慢。例如:
SELECT
… WH...
ORACLE
中
where部分
条件
执行顺序
测试
ORACLE
中
where部分
条件
执行顺序
测试 实验1:证明
oracle
SQL的语法分析应该是从右到左的 实验2:证明了
oracle
SQL
条件
的执行是从右到左的 实验3:证明同一个where子句
中
条件
的先后顺序对效率影响不大
Oracle
数据库 where
语句
的
执行顺序
Oracle
数据库,sql
语句
,where的
执行顺序
,是从左到右执行; 例子: 数据库
中
存储 scarleimp表 |sequence_no|transdate |seller_code| |202012211111|20201126|009| |202012211112|20201125|009| | | | scarle表 |sequence_no|transdate |seller_code| |202012211111|20201126|009| |202012211112|20201125
关于
Oracle
查询时where
条件
执行顺序
因在工作
中
数据库查询数量百万级表
中
需要多
条件
查询,但是筛选
条件
只有一列有索引,查询效率很低,后查阅资料后修改where后执行的
条件
顺序,瞬间执行查询
语句
提速至毫秒级。故以此为记。 eg:
SELECT
列名 FROM 表名 WHERE
条件
A AND
条件
B; 如上很简单的一条查询,在数量少的情况下,where后
条件
顺序不管如何几乎查询效率都不低,但在百万级数据
中
检索再加上
条件
B查询的列上没有创...
Sybase
2,598
社区成员
25,609
社区内容
发帖
与我相关
我的任务
Sybase
Sybase相关技术讨论区
复制链接
扫一扫
分享
社区描述
Sybase相关技术讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章