Index merge ordering
First Claim
1. A system, comprising:
- a computer processor; and
a memory containing a program, which when executed by the computer processor, performs an operation to order query results, the operation comprising;
processing a received query at least in part using a composite key index, wherein the composite key index comprises at least two key columns, wherein the at least two key columns comprise at least one pre-ordering column and an ordering column, wherein the query specifies ordering criteria to order a result set based on values of the ordering column, by;
receiving, from the composite key index, an ordering column value for each unique pre-ordering column value in the composite key index;
identifying a first ordering column value as being ordered first according to the ordering criteria;
returning the first ordering column value as being responsive to the query;
replacing, in a list of the ordering column values received from the composite key index, the first ordering column value with a second ordering column value received from the composite key index, the second ordering column value sharing the unique pre-ordering column value of the first ordering column value;
identifying a next ordering column value as being ordered first among the ordering column values in the list according to the ordering criteria; and
returning the next ordering column value as being responsive to the query.
1 Assignment
0 Petitions
Accused Products
Abstract
System, method, and computer program product to order query results, by processing a received query at least in part using a composite key index, wherein the composite key index comprises at least two key columns, wherein the at least two key columns comprise at least one pre-ordering column and an ordering column, wherein the query specifies ordering criteria to order a result set based on values of the ordering column, wherein the processing comprises receiving, from the composite key index, an ordering column value for each unique pre-ordering column value in the composite key index, identifying a first ordering column value as being ordered first according to the ordering criteria, and returning the first ordering column value as being responsive to the query.
-
Citations
16 Claims
-
1. A system, comprising:
-
a computer processor; and a memory containing a program, which when executed by the computer processor, performs an operation to order query results, the operation comprising; processing a received query at least in part using a composite key index, wherein the composite key index comprises at least two key columns, wherein the at least two key columns comprise at least one pre-ordering column and an ordering column, wherein the query specifies ordering criteria to order a result set based on values of the ordering column, by; receiving, from the composite key index, an ordering column value for each unique pre-ordering column value in the composite key index; identifying a first ordering column value as being ordered first according to the ordering criteria; returning the first ordering column value as being responsive to the query; replacing, in a list of the ordering column values received from the composite key index, the first ordering column value with a second ordering column value received from the composite key index, the second ordering column value sharing the unique pre-ordering column value of the first ordering column value; identifying a next ordering column value as being ordered first among the ordering column values in the list according to the ordering criteria; and returning the next ordering column value as being responsive to the query. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer program product, comprising:
a non-transitory computer-readable storage medium having computer-readable code embodied therewith, the computer-readable program code executable by a processor to perform an operation comprising; processing a received query at least in part using a composite key index, wherein the composite key index comprises at least two key columns, wherein the at least two key columns comprise at least one pre-ordering column and an ordering column, wherein the query specifies ordering criteria to order a result set based on values of the ordering column, by; receiving, from the composite key index, an ordering column value for each unique pre-ordering column value in the composite key index; identifying a first ordering column value as being ordered first according to the ordering criteria; returning the first ordering column value as being responsive to the query; replacing, in a list of the ordering column values received from the composite key index, the first ordering column value with a second ordering column value received from the composite key index, the second ordering column value sharing the unique pre-ordering column value of the first ordering column value; identifying a next ordering column value as being ordered first among the ordering column values in the list according to the ordering criteria; and returning the next ordering column value as being responsive to the query. - View Dependent Claims (8, 9, 10, 11)
-
12. A computer program product, comprising:
a non-transitory computer-readable storage medium having computer readable program code embodied therewith, the computer readable program code executable by a processor to perform an operation comprising; processing a received query at least in part using a composite key index, wherein the composite key index comprises at least two key columns, wherein the at least two key columns comprise at least one pre-ordering column and an ordering column, wherein the query specifies ordering criteria to order a result set based on values of the ordering column, by; receiving, from the composite key index, an ordering column value for each unique pre-ordering column value in the composite key index; identifying, in a list of the ordering column values received from the composite key index, a first ordering column value as being ordered first according to the ordering criteria; returning the first ordering column value as being responsive to the query; replacing the first ordering column value in the list with a second ordering column value received from the composite key index, the second ordering column value sharing the unique pre-ordering column value of the first ordering column value; identifying a next ordering column value as being ordered first among the ordering column values in the list according to the ordering criteria; and returning the next ordering column value as being responsive to the query. - View Dependent Claims (13, 14, 15, 16)
Specification