Steve:
According to Orace The Complete Reference (in the Hitchhiker's Guide to the
Optimizer chapter), the 1st table is scanned via a table access full and the
database applies "hashing" functions to the data to prepare the table for
the join.  The values from the second table are then read and the hashing
function is used to compare the 2nd table with the 1st.

In your example the full table scan of b_tab and the index fast scan are at
the same level.  Therefore the order is top-to-bottom, which makes b_tab
your driving table.  My assumption is that b_tab is the object which has the
hashtable built on it.

HTH
Barb

> ----------
> From:         Steve Rospo[SMTP:[EMAIL PROTECTED]]
> Reply To:     [EMAIL PROTECTED]
> Sent:         Thursday, August 23, 2001 7:35 PM
> To:   Multiple recipients of list ORACLE-L
> Subject:      hash join order
> 
> 
> 
> Does anyone know how the operation below is performed?  Which object has
> the hashtable built on it and which object performs the lookup against the
> hashtable once it's built?
> 
> 
> 
> 
> | Operation                                      |  Name              |
> -----------------------------------------------------------------------
> |   0    SELECT STATEMENT                        |                    |
> |   1  0 HASH JOIN                               |                    |
> |   2  1  TABLE ACCESS FULL                      |B_TAB               |
> |   3  1  INDEX FAST FULL SCAN                   |PK_A_TAB            |
> -----------------------------------------------------------------------
> 
> 
> 
> -- 
> Please see the official ORACLE-L FAQ: http://www.orafaq.com
> -- 
> Author: Steve Rospo
>   INET: [EMAIL PROTECTED]
> 
> Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
> San Diego, California        -- Public Internet access / Mailing Lists
> --------------------------------------------------------------------
> 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).
> 
-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Baker, Barbara
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
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