1. A method for determining whether records are similar in a database, the method comprising: (a) selecting two records in the database; (b) accessing two corresponding fields of the selected records; (c) determining a type of data in the accessed fields; and (d) applying a match function to the accessed corresponding fields to generate a match score based on the type of data in the accessed fields, wherein, if the type of data in the fields is nominal, the match function applied is a Boolean match function, if the type of data in the fields is ordinal, the match function applied is an ordinal match function, and if the type of data in the fields is unstructured data, the match function applied is a vector-based match function.