1. A method of performing a database join, comprising: receiving a query specifying a join of a first table and a second table; determining a new predicate for the query based on a mapping, for a plurality of tuples of the join, between a first column of the first table, and a second column of the second table; and modifying the query such that the query comprises the new predicate.