oracle在执行自隐式转换时:总是会把字符串转为数字,字符串转为日期。当列进行转换,会跳过索引,降低性能。 创建一个表格,给三个列建立索引,进行测试。 create table t1(n1 number, v1 varc
oracle在执行自隐式转换时:总是会把字符串转为数字,字符串转为日期。当列进行转换,会跳过索引,降低性能。
create table t1(n1 number, v1 varchar2(10), d1 date);
insert into t1
select
rownum n1
, rownum v1
, sysdate + dbms_random.value(0,365)
from
dual
connect by level <= 1e3;
create index t1_n1_idx on t1(n1);
create index t1_v1_idx on t1(v1);
create index t1_d1_idx on t1(d1);
View Code
select count(1) from t1 where v1 = 1
下面的走索引T1_V1_IDX
select count(1) from t1 where v1 = "1"
只要列不转类型,就走索引
总结自:https://www.red-gate.com/simple-talk/sql/oracle/oracle-data-type-implicit-conversion-hierarchy/
--结束END--
本文标题: Oracle 隐式转换
本文链接: https://lsjlt.com/news/6789.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-10-23
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0