oracle里面尽量少用and or 和union 、union all 底层是怎样对数据库进行查询的?
oracle里面尽量少用andor而且要求多用类似union,经过测试的确是后者比前者效率要高,但是他们的底层是怎么从数据库里面进行操作的?...
oracle里面尽量少用and or 而且要求多用 类似union ,经过测试的确是后者比前者效率要高 ,但是他们的底层是怎么从数据库里面进行操作的?
展开
1个回答
展开全部
http://blog.csdn.net/helloboat/article/details/42418131
这里有几篇日志是相关的。可以参考参考
我是这样理解的,可能也不对但是可以参考一下
and:oracle 先查找满足and 之前的,然后扫描and之后的条件。大概需要扫描两遍或者以上。
or:那么扫描次数更多了。满足or之前,扫描全表一次;满足or之后,一次;同时满足又一次。
union:只是联合查询而已,根据索引来找,挺快的,几乎耗费不了多少时间。
懂用就行了,还需要知道底层啊,这个假如你的专业不是这方面的不必深究
这里有几篇日志是相关的。可以参考参考
我是这样理解的,可能也不对但是可以参考一下
and:oracle 先查找满足and 之前的,然后扫描and之后的条件。大概需要扫描两遍或者以上。
or:那么扫描次数更多了。满足or之前,扫描全表一次;满足or之后,一次;同时满足又一次。
union:只是联合查询而已,根据索引来找,挺快的,几乎耗费不了多少时间。
懂用就行了,还需要知道底层啊,这个假如你的专业不是这方面的不必深究
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询