2014-07-19 12 views
5

Quando vedo qualcosa di simile in un piano di query di Oracle:Interpretazione hash join in Oracle piano di query

HASH JOIN 
    TABLE1 
    TABLE2 

Quale di queste due tabelle è essere hashed?

La documentazione di Oracle fa riferimento a una tabella "più piccola" che di solito viene sottoposta a hash, ma esiste una garanzia che la tabella con hash sarà sempre in una posizione particolare (sottocentro superiore o inferiore) quando visualizzata all'interno di un piano di query?

risposta

5

Example 9-3 Hash Joins, nella documentazione JOIN, riguarda un piano di spiegazioni per hash join. Esiste una frase nell'esempio che indica:

In un hash join, il set di dati per la tabella hash appare sempre prima nell'elenco di operazioni (Passaggio 2).

Un'osservazione; Oracle non hash una tabella più piccola, ma un set di dati più piccolo.