trunc日期会影响索引的使用吗?
在做ebs11.0的二次开发时,碰到这个问题,
我做了一下测试,发现并没有影响
例:
select *
from inv.mtl_material_transactions t
where t.organization_id = 4
--and t.transaction_date < trunc(to_date('&f_date', 'yymmdd
-------使用索引是MTL_MATERIAL_TRANSACTIONS_N5,列是ORGANIZATION_ID, TRANSACTION_DATE
select *
from inv.mtl_material_transactions t
where t.organization_id = 4
and trunc(t.transaction_date)<to_date('&f_date', 'yymmdd') ---
-------使用索引是MTL_MATERIAL_TRANSACTIONS_N5,列是ORGANIZATION_ID, TRANSACTION_DATE
select *
from inv.mtl_material_transactions t
where t.organization_id = 4
and t.transaction_date < trunc(to_date('&f_date', 'yymmdd'))
-------使用索引是MTL_MATERIAL_TRANSACTIONS_N5,列是ORGANIZATION_ID, TRANSACTION_DATE
请兄弟们帮忙分析一下
------解决方案--------------------不會影響
------解决方案--------------------我想回复你,但是CSDN一直提示不能提交非法数据,我就服了……
对于组合索引,你organization_id放在前面,只要查询条件里面有organization_id=4,就会走这个索引,至于后面的字段用没用到,刚看这个看不出来。
你把索引里面的两个字段顺序换一下,然后再看下执行计划,就看出区别来了