[prev] 31 [next]

Join

DBMSs are engines to store, combine and filter information.

Join () is the primary means of combining information.

Join is important and potentially expensive

Most common join condition: equijoin, e.g. (R.pk = S.fk)

Join varieties (natural, inner, outer, semi, anti) all behave similarly.

We consider three strategies for implementing join

  • nested loop ... simple, widely applicable, inefficient without buffering
  • sort-merge ... works best if tables are soted on join attributes
  • hash-based ... requires good hash function and sufficient buffering