Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: bitmap index not used
Probably the histogram is deciding that. Remove the histogram and see if
there is any changes.
Waleed
-----Original Message-----
Sent: Wednesday, October 29, 2003 3:10 PM
To: Multiple recipients of list ORACLE-L
Hi,
I have a puzzle.
A bitmap index on a varchar2(25) column. table has 7131413 rows, of which 7125290 are null for the column in question, the rest of the rows are unique values. There is a histogram on this column, it has 2 buckets.
A select statement using this column in the where clause generates two plans, one which uses the index and one which doesn't. The deciding factor is the length of the string in the filter.
select * from table where microchip_number = 'avid1'
this produces a plan which uses the bitmap
select * from table where microchip_number = 'avid12' (and any additional characters in the string )
this produces a plan which uses a full table scan.
I am stumped about how to figure out why the optimizer makes a choice based upon the length of the string in the predicate.
Much obliged,
Josh
--
Please see the official ORACLE-L FAQ: http://www.orafaq.net
--
Author: Josh Collier
INET: Josh.Collier_at_Banfield.net
Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services ---------------------------------------------------------------------To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).
Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services ---------------------------------------------------------------------To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). Received on Wed Oct 29 2003 - 15:49:29 CST