关于Where子句的解析顺序,谢谢大牛指导 1,如果Where子句中有索引,则肯定是按照索引扫描,是不是子句中索引列和非索引列顺序无所谓?2,如果Where子句中没有索引,则如果好几个条件,Oracle解析时是否按照从右向左进行,是不是要把尽可能过滤最多记录的条件放在最右边?谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1、有索引的最好优先进行,使得返回的结果集最少。尽量将该列放在where子句的最后2、是的,一个原则,要使得最先返回的结果集尽量的少,后面的条件返回结果集才会相对快一些 怎么回事?和我们这的DBA说法相反:他认为能尽可能过滤掉最多记录的条件应放在where 的最后面 说错了,和我们这的DBA说法相反:他认为能尽可能过滤掉最多记录的条件应放在where 的最前面,比如说:where A='a' and B='b';如果B=‘b’能过滤大部分记录,则我们这的DBA认为应该这样写:where B='b'and A='a' 正解:能尽可能过滤掉最多记录的条件应放在where 的最后面 正解:能尽可能过滤掉最多记录的条件应放在where 的最后面 具体来说,在ora9i之前的版本,这个方面可能会比较受到影响。此外还和优化规则有关系。所以在9i(不确定),在10g之后,如果使用cbo方式,则不会有影响的。应该可以在performance tuning 可以找到。尚未确定,有待高人详解。 Oracle数据库导入问题!急啊 菜鸟求助 oracle 数据库查询 oracle安装准备工作: 请教ORACLE的绝顶高手?一般开发者此贴不必看了! proc程序与数据库保持长连接 在oracle中如何用check和like来实现一个字段中只能输入数字 如何最方便的将一个sqlserver数据库“移植”到oracle数据库??在线求教!! 怎样让数据库表中的一列自动增加? 怎样把数据库里的所有表结构导出到另一数据库? oracle 随机查询的问题 强难的一个效率问题!!(表中有近1000万条数据) 一个VB程序的数据库源
尚未确定,有待高人详解。