11. The non-transitory, computer-readable medium recited in claim 10 , wherein the machine-readable instructions, when executed by the processor, cause the processor to execute the modified query.
10. A non-transitory, computer-readable medium comprising machine-readable instructions executable by a processor to perform a database join, wherein the machine-readable instructions, when executed by the processor, cause the processor to: generate a bit map that maps a first column of a first table to a second column of a second table; receive a query specifying a join of a first table and a second table; determine a new predicate for the query based on the bit map; and modify the query such that the query comprises the new predicate, wherein generating the bit map comprises: determining a plurality of potential value pairs between the first column and the second column; determining a plurality of actual value pairs in a plurality of tuples resulting from the join query; and setting a bit in the bit map to 1 for each of the plurality of actual value pairs.