Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

999

积分

1

好友

942

主题
1#
发表于 2013-10-17 00:08:23 | 查看: 2982| 回复: 1
INLIST ITERATOR

如果查询包含一个 IN 子句,该子句在同一个列上有用 OR 链接的多个值或等式谓词,则会使用 INLIST 迭代程序。
INLIST ITERATOR 运算符将对枚举值列表进行迭代运算,对每个值都单独执行一次。
原有语句的执行计划与用等式子句代替 IN 子句的语句的执行计划相同,但增加了一个步骤。INLIST ITERATOR 该额外步骤发生在为等式子句提供列表中的唯一值时。
在 PL/SQL 中,此运算符作为 FOR LOOP 语句出现。在幻灯片上的示例中,对两个值进行了索引探测迭代运算:1 和 2。
此外,它还是一个使用索引的函数;将对索引进行扫描以查找列表中的每个值。一种替代方式是用 UNION ALL 合并每个值,或者将 FILTER 用于所有行以过滤出所需的值,这些方式的效率会高得多。  
如果指定了带值的 IN 子句,并且优化程序为该列找到了一个选择性索引,则优化程序将使用 INLIST ITERATOR。如果存在使用同一个索引的多个 OR 子句,则优化程序将选择此运算,而不是 CONCATENATION 或 UNION ALL,因为此运算的效率更高。
下载专业ORACLE数据库恢复工具PRM-DUL  For Oracle http://www.parnassusdata.com/

如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!

诗檀软件专业数据库修复团队

服务热线 : 13764045638  QQ: 47079569     邮箱:service@parnassusdata.com
2#
发表于 2013-11-19 11:00:02
INLIST ITERATOR 运算效率很高?希望刘大来解答

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-5-19 02:34 , Processed in 0.045256 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569