Patent ID: 8438173

Claim:
An apparatus comprising at least one computer-readable storage medium having stored thereon computer-executable instructions that, when loaded into a processor and executed, cause the processor to: traverse a data store that includes a plurality of records, wherein the records are associated with at least two fields that are populated with respective values; select at least one of the records for indexing; retrieve the field values from the selected record; define an indexing priority specifying how to rank the field values; arrange the field values according to the indexing priority; concatenate the field values as arranged per the indexing priority; sort the concatenated field values into an entry within an index table; associate the entry in the index table with the selected record from the data store; receive an input query that includes at least two query values that respectively reference at least the two field values; correlate the query values to fields in the data store; arrange the query values according to the indexing priority; concatenate the query values as arranged in the indexing priority; and search the index table for any entries that are responsive to the concatenated query values.