[SQL ] 關於Oracle索引問題
有一TABLE: MM_STKREC 有2個索引,分別是STKNO+RECYM(儲區+異動年月)
及RECDT(進出日期)
使用語法1時,只會開STKNO+RECYM這個索引,但RECDT卻不會開,
結果速度很慢(因為此檔會儲區進出交易記錄檔,是超級大檔)
使用語法2時,直接開RECDT這個索引,結果速度超快
為什麼為什麼ㄋ ??? 照道理不是應該兩個索引都會開嗎 ?? 有人知道為什麼嗎
語法1:
select a.STKNO,RECYM,a.RFMNO,a.ITEMNO,a.NSN,a.GQTY,a.TRNCTP,a.ITMLOT,a.RECDT
from MM_STKREC a
where a.RECDT>='10/04/2007' and a.RECDT<'10/05/2007'
and a.STKNO='AKMS1'
語法2:
select a.STKNO,RECYM,a.RFMNO,a.ITEMNO,a.NSN,a.GQTY,a.TRNCTP,a.ITMLOT,a.RECDT
from MM_STKREC a
where a.RECDT>='10/04/2007' and a.RECDT<'10/05/2007'
and a.STKNO>='AKMS1' AND a.STKNO<='AKMS1'
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.66.215.95
討論串 (同標題文章)