value from index block or table block

From: Grzegorz Goryszewski <>
Date: Wed, 23 Nov 2011 16:56:36 +0100
Message-ID: <>

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

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

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

Received on Wed Nov 23 2011 - 09:56:36 CST

Original text of this message