Guys,

create table Tab1 ( name varchar2(100),age int,state varchar2(100),country 
varchar2(100));

insert into tab1 values ('SCOTT',25,'TN','India');

I have 20,00,000 records like above.

create index idx1 on tab1 (upper(name));

analyze table tab1 compute statistics;
analyze index idx1 compute statistics;

select age from tab1 where upper(name)='SCOTT'; ---> this will return around 50 
records.

---------------------------------------------------------
  0      SELECT STATEMENT Optimizer=CHOOSE (Cost=2458 Card=262146 Bytes=2097168)
  1    0   TABLE ACCESS (FULL) OF 'TAB1' (Cost=2458 Card=262146 Bytes=2097168)

--- INIT.ORA ----------------------
optimizer_mode=choose
compatible=8.1.0
query_rewrite_enabled=true
query_rewrite_integrity=trusted
-----------------------------------
It's Oracle 8.1.6/Win2K.

When i add a HINT, IDX1 is used.Why is it so ?
Why this SELECT does not use index IDX1 w/o a hint ? 

TIA.
Jp.


-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.net
-- 
Author: Prem Khanna J
  INET: [EMAIL PROTECTED]

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: [EMAIL PROTECTED] (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).

Reply via email to