Sort merge join
# Sort merge join

Nella teoria delle basi di dati, lalgoritmo sort merge join (o anche solo merge join) si distingue dagli altri algoritmi di join perché prima di effettuare i confronti ordina (sort) le relazioni secondo l'attributo di join. Una volta ordinate le unisce (merge). Appena viene trovata una corrispondenza tra tuple provenienti da relazioni diverse, essa viene messa nel result set di output.

## Pseudo-codice dell'algoritmo

Una possibile implementazione dell'algoritmo è la seguente:

## Utilizzi

Dato che l'ordinamento iniziale può essere un'operazione molto costosa, specialmente se il volume di dati coinvolti è alto, è preferibile utilizzare altri algoritmi quando ci si trova in questa condizione. Al contrario, se i dati sono già ordinati o è necessario ordinarli comunque (ad esempio è presenta la clausola order by) o la clausola di join si basa su un'ineguaglianza, è preferibile usare questo tipo di algoritmo.

