1. A computer implemented record matching system comprising the following computer-implemented components: at least one processor coupled to a memory, the processor executes; an interface component that acquires example pairs of matching and non-matching records; a generation component that automatically constructs a matching query composed with at least one primitive operator based on the example pairs, the primitive operators include data-cleaning operators including a functional dependency correction operator which corrects missing and incorrect value(s) in a record in a first table by determining a dominant value of a comparable value(s) in a reference table; and a feature table component that generates a similarity feature table based on the example pairs and a similarity selection function; wherein the primitive operators further include relational operators, at least one of the relational operators is a split operator that partitions a plurality of input relations into multiple disjoint subsets based on a single attribute that is either numerical or categorical, at least one of the relational operators is a numerical split operator includes two portions, the first portion of the numerical split operator is for input relations greater than or equal to a first threshold value, all remaining input relations are included in a second portion of the numerical split operator, at least one of the relational operators is a categorical split operator includes partitioning the input relations into n parts, where n is the number of distinct values in a domain of the input relations; and the numerical split operator and the categorical split operator are configured to return fewer partitions by grouping the single attribute values into a plurality of sets.