ORACLE RAW列不走索引的问题解决

一、表结构

LABEL_PARAM有2亿多的数据。不走索引查一条数据需要花费5-10分钟。

ORACLE RAW列不走索引的问题解决

 

ORACLE RAW列不走索引的问题解决

 

 二、不走索引的SQL和执行计划

select * from MITLABELMANAGER.label_param where label_id = 'C4A879E9CC8246FB9053004735F2604A' 

 ORACLE RAW列不走索引的问题解决

ORACLE RAW列不走索引的问题解决

 

发现LABEL_ID列需要通过RAWTOHEX方法转换成HEX类型再与ID进行比较,由于经过了转换,所以必须要进行全表扫描了。

所以只要提前将ID转换成RAW类型的输入就可以解决问题。

三、优化后的可以走索引的SQL和执行计划

优化之后走索引了,每次查询只需要零点几秒,满足生产查询要求

select * from MITLABELMANAGER.label_param where label_id = HEXTORAW('C4A879E9CC8246FB9053004735F2604A') 

ORACLE RAW列不走索引的问题解决

 

 ORACLE RAW列不走索引的问题解决

 

上一篇:如何在工作中提高pandas运行速率?【超实用方法整理】


下一篇:大白话讲解OAuth2.0的客户端模式Client Credentials