Table Access by Rowid

Rowid is an internal representation of the storage location of data. The rowid of a row specifies the data file and data block containing the row and the location of the row in that block.

Locating a row by specifying its rowid is the fastest way to retrieve a single row because it specifies the exact location of the row in the database.

To access a table by rowid, Oracle first obtains the rowids of the selected rows, either from the statement’s WHERE clause or through an index scan of one or more of the table’s indexes and then locates each selected row in the table based on its rowid and fetches the records.

----------------------------------------------------------------------------
|Id| Operation                           | Name     |Rows|Bytes|Cost(%CPU)|Time|
----------------------------------------------------------------------------
| 0| SELECT STATEMENT                    |             |  |    |2(100)|        |
| 1|  TABLE ACCESS BY INDEX ROWID BATCHED|EMPLOYEES    |16|1104|2  (0)|00:00:01|
|*2|   INDEX RANGE SCAN                  |EMP_EMP_ID_PK|16|    |1  (0)|00:00:01|
----------------------------------------------------------------------------
 
Predicate Information (identified by operation id):
---------------------------------------------------
 
2 - access("EMPLOYEE_ID">10)

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.