value from index block or table block

  • From: Grzegorz Goryszewski <grzegorzof@xxxxxxxxxx>
  • To: oracle-l@xxxxxxxxxxxxx
  • Date: Wed, 23 Nov 2011 16:56:36 +0100

Hi,
I know that seems crazy but please clarify that for me ,let say for
10.2.0.3 but that does not matter .

Let say we got table t with col1, col2, col3 and index on that table on
col1, col2 and
query

select col1,col2,col3 from t where col1 = 'value' ;
Let say that
TABLE ACCESS BY INDEX ROWID was used for that query

My question from where Oracle retrieves col1,col2 values ?
From index block and then col3 value from table block via rowid found in
index block ?
Or maybe only rowid from index and then col1,col2,col3 values from table
block only ?

I'm asking because wonder if its possible to get different values if
access plan is full table scan .
Suppose You've got 'corrupted' index block (or rather changed by block
editor) with different value than in table block for some column value .
So it is possible to get different values if access path differs ?
Regards
GregG

--
//www.freelists.org/webpage/oracle-l


Other related posts: