Patent ID: 7383262

Claim:
A method for ranking results of a present database query comprising: accessing a specified attribute value from the present database query; accessing one or more unspecified attribute values from a workload, wherein the workload includes attribute values associated with one or more previous database queries including the specified attribute value; calculating a global atomic quantity for each of the one or more unspecified attribute values in a database, each global atomic quantity representing an unconditional importance level of its respective unspecified attribute value; calculating a conditional atomic quantity for each of the one or more unspecified attribute values in the database, each conditional atomic quantity representing a conditional importance level of an association between each of the one or more unspecified attribute values and the specified attribute value; and ranking result tuples of the present database query based on the global atomic quantities and the conditional atomic quantities, wherein the ranking result tuples comprises: calculating a conditional score for each tuple in the database; calculating a global score for each tuple in the data base; and using conditional scores and global scores, calculating a ranking score for each result tuple of the present database query that includes the specified attribute value; wherein the calculating a conditional score comprises calculating a conditional score according to: CondScore = ∏ z ∈ t ⁢ ⁢ p ( x  ⁢ z , W ) ∏ z ∈ t ⁢ ⁢ p ( x  ⁢ z , D ) ; and wherein the calculating a global score comprises calculating a global score according to: GlobScore = ∏ z ∈ t ⁢ p ⁡ ( z | W ) ∏ z ∈ t ⁢ p ⁡ ( z | D ) wherein t is a tuple that contains a specified attribute value from the present database query, x is a specified attribute value from the present database query, z is an unspecified attribute value from the present database query, W is a workload of the database, and D is data in the database.