投稿日 | : 2006/02/08(Wed) 09:23 |
投稿者 | : ごろう |
Eメール | : |
URL | : |
タイトル | : ORACLEで高速抽出 |
オラクル(7)でSelect分を使ってデータを抽出する際、
例えば、列SCODE(index付)に商品コードが入っていたとして最初が001のデータだけ抽出する場合。
substr(SCODE,1,2) = '001'
とするより、
SCODE like '001%'
とした方がインデックスが解除されないので高速と聞いています。
では、これが日付の場合はどうなのでしょうか?
例えば列UPDATE(index付)に'yyyy/mm/dd'で入っているデータを月だけで抽出する場合。
TO_CHAR(UPDATE,'yyyy/mm') = '2006/02'
と
UPDATE >= '2006/02/01' AND UPDATE <= '2006/02/28'
とはどちらが高速で処理できるのでしょうか?
TO_CHARを使うとやはりindexは解除されるのでしょうか?(時間入りの場合も同様)
よろしくお願いします。