C/C++教程

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

本文主要是介绍ORACLE RAW列不走索引的问题解决,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、表结构

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

 

 

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

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

 

 

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

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

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

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

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

 

 

 

这篇关于ORACLE RAW列不走索引的问题解决的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!