SQL优化 where谓词条件OR优化

1.测试表,及测试语句where条件中OR对应两个字段选择度很高

create table t618 as select * from dba_objects;

select object_name from t618 where (object_id=12043 or DATA_OBJECT_ID=12043) and STATUS='VALID';

2.没有索引情况下,全表扫描逻辑读1238。

3.OR其中一列创建索引,无法使用索引,全表扫描。

SYS@db11g> create index idx_t618_01 on t618(object_id) online;

Index created.

4.OR对应两列同时创建索引,可以使用到两个索引,并CONCATENATION,逻辑读降为7。

SYS@db11g> create index idx_t618_02 on t618(DATA_OBJECT_ID) online;

Index created.

相关推荐
EndingCoder1 天前
类的继承和多态
linux·运维·前端·javascript·ubuntu·typescript
赵渝强老师1 天前
【赵渝强老师】OceanBase的配置文件与配置项
数据库·oceanbase
信创天地1 天前
深耕金融政务核心场景:国产化数据库迁移的全流程架构设计与风险管控
运维·网络安全·系统架构·系统安全·运维开发
玖日大大1 天前
OceanBase SeekDB:AI 原生数据库的技术革命与实践指南
数据库·人工智能·oceanbase
ZFB00011 天前
【麒麟桌面系统】V10-SP1 2503 系统知识——添加用户
linux·运维·kylin
释怀不想释怀1 天前
Docker(网络)
运维·docker·容器
ZFB00011 天前
【麒麟桌面系统】V10-SP1 2503 系统知识——进入救援模式
linux·运维·kylin
RisunJan1 天前
Linux命令-iptables-restore命令(从文件批量恢复 iptables 防火墙规则)
linux·运维·网络
轻造科技1 天前
周期压缩极限挑战:APS排产优化这样实现
运维·devops
鲨莎分不晴1 天前
Nginx 部署前端项目实战指南
运维·前端·nginx