1. A computer-implemented method of joining one or more first database objects with one or more second database objects comprising; determining a weight for each of a plurality of join predicates between one or more of the first database objects and one or more of the second database objects based on a join selectivity for each of the plurality of join predicates; sorting the plurality of join predicates based on the determined weights; and performing a join operation to join the one or more first database objects with the one or more second database objects in accordance with an order of the sorted plurality of join predicates.