1. A system for searching through multiple databases based on a search expression, said system comprising: a memory containing a set of instructions, the instructions including: defining instructions for defining a distribution of records corresponding to search keys in the multiple databases; dividing instructions for dividing the search expression into multiple search expressions based in part on the distribution of records, and determining respective target search ranges for the multiple search expressions such that each of a number of the distribution records to be searched with each of said multiple search expressions is approximately constant to others of the number of the distribution of records, wherein the dividing instructions use a data distribution table to divide the search expression, wherein the data distribution table indicates how the records are distributed in each table of a plurality of tables, wherein ones of the plurality of tables correspond to ones of the multiple databases, and wherein the records correspond to a common key; executing instructions for executing the multiple search expressions in respective target search ranges of the multiple search expressions; and a processing unit for executing the set of instructions.