Encyclopedia of Database Systems

2018 Edition
| Editors: Ling Liu, M. Tamer Özsu

Sort-Merge Join

  • Jingren ZhouEmail author
Reference work entry
DOI: https://doi.org/10.1007/978-1-4614-8265-9_867


Merge join


The sort-merge join is a common join algorithm in database systems using sorting. The join predicate needs to be an equality join predicate. The algorithm sorts both relations on the join attribute and then merges the sorted relations by scanning them sequentially and looking for qualifying tuples.

Key Points

The sorting step groups all tuples with the same value in the join attribute together. Such groups are sorted based on the value in the join attribute so that it is easy to locate groups from the two relations with the same attribute value. Sorting operation can be fairly expensive. If the size of the relation is larger than the available memory, external sorting algorithm is required. However, if one input relation is already clustered (sorted) on the join attribute, sorting can be completely avoided. That is why the sort-merge join looks attractive if any of the input relations is sorted on the join attribute.

The merging step starts with scanning...

This is a preview of subscription content, log in to check access.

Recommended Reading

  1. 1.
    Mishra P, Eich MH. Join processing in relational databases. ACM Comput Surv. 1992;24(1):63–113.CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Alibaba GroupHangzhouChina

Section editors and affiliations

  • Evaggelia Pitoura
    • 1
  1. 1.Department of Computer Science and EngineeringUniversity of IoanninaIoanninaGreece