System, Method, and Data Structure for Automatically Generating Database Queries which are Data Model Independent and Cardinality Independent
First Claim
1. A processor-implemented method for performing a query, comprising:
- receiving an identification of data item components and an association between the data item components, wherein the data item components include a measure and a category, and wherein the identified association indicates that the measure is independent of another data item component, indicates that the measure is dependent on another data item component, or indicates that two or more data item components are correlated;
creating a database query for retrieving data item components, wherein the database query includes a first Uquery, wherein the first Uquery includes a Mx segment subquery and a U0 segment subquery, wherein the Mx segment subquery is associated with a table that contains the measure, a table that contains columns for a calculated measure, or a correlated table, and wherein the U0 segment subquery is associated with a table that contains the category, a table that contains columns for a calculated category, a dependent measure table, or a dependent filter table;
executing the Mx segment subquery to generate Mx segment subquery results;
executing the U0 segment subquery to generate U0 segment subquery results;
joining the Mx segment subquery results with the U0 segment subquery results to generate Uquery results.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods are provided for performing a database query. After receiving an identification of data item components and associations between the data item components, wherein the data item components include a measure and a category, a query generation system creates and executes a database query that comprises one or more Uqueries, wherein each Uquery comprises a Mx segment subquery and a U0 segment subquery. The Mx segment subquery is associated with a table that contains the measure, a table that contains columns for a calculated measure, or a correlated table, and the U0 segment subquery is associated with a table that contains the category, a table that contains columns for a calculated category, a dependent measure table, or a dependent filter table. The query generation system can generate a virtual results table by aggregating Uquery results from one Uquery with Uquery results from another Uquery.
-
Citations
35 Claims
-
1. A processor-implemented method for performing a query, comprising:
-
receiving an identification of data item components and an association between the data item components, wherein the data item components include a measure and a category, and wherein the identified association indicates that the measure is independent of another data item component, indicates that the measure is dependent on another data item component, or indicates that two or more data item components are correlated; creating a database query for retrieving data item components, wherein the database query includes a first Uquery, wherein the first Uquery includes a Mx segment subquery and a U0 segment subquery, wherein the Mx segment subquery is associated with a table that contains the measure, a table that contains columns for a calculated measure, or a correlated table, and wherein the U0 segment subquery is associated with a table that contains the category, a table that contains columns for a calculated category, a dependent measure table, or a dependent filter table; executing the Mx segment subquery to generate Mx segment subquery results; executing the U0 segment subquery to generate U0 segment subquery results; joining the Mx segment subquery results with the U0 segment subquery results to generate Uquery results. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A processor-implemented method for performing a query, comprising:
-
receiving an identification of data item components and associations between the data item components, wherein the data item components include measures and a category, and wherein the identified associations include at least two different associations from the set of associations comprising an indication that one measure is independent of other measures, an indication that one measure is dependent on another measure, and an indication that two or more measures are correlated; creating a database query for retrieving data item components, wherein the database query includes a first Uquery and a second Uquery, wherein each Uquery includes a Mx segment subquery and a U0 segment subquery, wherein at least one Mx segment subquery is associated with a table that contains one of the measures, a table that contains columns for a calculated measure, or a correlated table, and wherein at least one U0 segment subquery is associated with a table that contains the category or a table that contains columns for a calculated category and wherein another U0 segment subquery is associated with a dependent measure table or a dependent filter table; executing each Mx segment subquery to generate Mx segment subquery results; executing each U0 segment subquery to generate U0 segment subquery results; joining Mx segment subquery results from each Uquery with the U0 segment subquery results from the same Uquery to generate Uquery results; generating a virtual results table by aggregating the Uquery results from one Uquery with Uquery results from another Uquery; and reporting the virtual results table. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A system for performing a query, comprising:
-
one or more data processors; a computer-readable storage medium encoded with instructions for commanding the one or more data processors to execute steps including; receiving an identification of data item components and an association between the data item components, wherein the data item components include a measure and a category, and wherein the identified association indicates that the measure is independent of another data item component, indicates that the measure is dependent on another data item component, or indicates that two or more data item components are correlated; creating a database query for retrieving data item components, wherein the database query includes a first Uquery, wherein the first Uquery includes a Mx segment subquery and a U0 segment subquery, wherein the Mx segment subquery is associated with a table that contains the measure, a table that contains columns for a calculated measure, or a correlated table, and wherein the U0 segment subquery is associated with a table that contains the category, a table that contains columns for a calculated category, a dependent measure table, or a dependent filter table; executing the Mx segment subquery to generate Mx segment subquery results; executing the U0 segment subquery to generate U0 segment subquery results; joining the Mx segment subquery results with the U0 segment subquery results to generate Uquery results. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
-
35. A non-transitory computer-readable storage medium comprising programming instructions for performing a query, the programming instructions being adapted to cause a processing system to execute steps comprising:
-
receiving an identification of data item components and an association between the data item components, wherein the data item components include a measure and a category, and wherein the identified association indicates that the measure is independent of another data item component, indicates that the measure is dependent on another data item component, or indicates that two or more data item components are correlated; creating a database query for retrieving data item components, wherein the database query includes a first Uquery, wherein the first Uquery includes a Mx segment subquery and a U0 segment subquery, wherein the Mx segment subquery is associated with a table that contains the measure, a table that contains columns for a calculated measure, or a correlated table, and wherein the U0 segment subquery is associated with a table that contains the category, a table that contains columns for a calculated category, a dependent measure table, or a dependent filter table; executing the Mx segment subquery to generate Mx segment subquery results; executing the U0 segment subquery to generate U0 segment subquery results; joining the Mx segment subquery results with the U0 segment subquery results to generate Uquery results.
-
Specification