Summary filter transformation
First Claim
Patent Images
1. A method, in a data processing system having a processor, of summary filter query transformation, the method comprising:
- receiving, in a summary filter transformation system of the data processing system, a query having a select list, a from element, and a summary filter having a filter condition;
analyzing, by an analysis module of the summary filter transformation system, the filter condition to determine a filter group of the filter condition, the filter group comprising a list of expressions over which the filter condition is computed;
creating, by the analysis module, a derived table for computing the filter condition, the derived table having a select list, creating the derived table comprising;
adding the list of expressions of the filter group to the derived table as one or more columns of the derived table'"'"'s select list; and
adding the filter condition to the derived table as a one or more columns of the derived table'"'"'s select list;
transforming, by a transformation module of the summary filter transformation system, the received query by combining the received query with the derived table, transforming the received query comprising;
traversing the select list of the received query and transforming one or more aggregates of the select list to reference one or more of the columns of the derived table;
transforming the from element of the received query to reference the derived table; and
adding a WHERE clause to the transformed original query, the WHERE clause based on the filter condition and referencing one or more of the columns of the derived table.
6 Assignments
0 Petitions
Accused Products
Abstract
A mechanism for summary filter transformation is provided. The mechanism comprises a summary filter analysis module for analyzing a multidimensional query that is not supported by a target database system, and a summary filter transformation module for transforming the multidimensional query into a semantically equivalent query that is supported by the target database system.
-
Citations
18 Claims
-
1. A method, in a data processing system having a processor, of summary filter query transformation, the method comprising:
-
receiving, in a summary filter transformation system of the data processing system, a query having a select list, a from element, and a summary filter having a filter condition; analyzing, by an analysis module of the summary filter transformation system, the filter condition to determine a filter group of the filter condition, the filter group comprising a list of expressions over which the filter condition is computed; creating, by the analysis module, a derived table for computing the filter condition, the derived table having a select list, creating the derived table comprising; adding the list of expressions of the filter group to the derived table as one or more columns of the derived table'"'"'s select list; and adding the filter condition to the derived table as a one or more columns of the derived table'"'"'s select list; transforming, by a transformation module of the summary filter transformation system, the received query by combining the received query with the derived table, transforming the received query comprising; traversing the select list of the received query and transforming one or more aggregates of the select list to reference one or more of the columns of the derived table; transforming the from element of the received query to reference the derived table; and adding a WHERE clause to the transformed original query, the WHERE clause based on the filter condition and referencing one or more of the columns of the derived table. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A data processing system, comprising:
-
a query engine; and a summary filter transformation system coupled to the query engine, wherein the summary filter transformation system is configured to; receive a query having a select list, a from element, and a summary filter having a filter condition; analyze the filter condition to determine a filter group of the filter condition, the filter group comprising a list of expressions over which the filter condition is computed; create a derived table for computing the filter condition, the derived table having a select list, creating the derived table comprising; adding the list of expressions of the filter group to the derived table as one or more columns of the derived table'"'"'s select list; and adding the filter condition to the derived table as a one or more columns of the derived table'"'"'s select list; transform the received query by combining the received query with the derived table, transforming the received query comprising; traverse the select list of the received query and transforming one or more aggregates of the select list to reference one or more of the columns of the derived table; transform the from element of the received query to reference the derived table; and add a WHERE clause to the transformed original query, the WHERE clause based on the filter condition and referencing one or more of the columns of the derived table. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer program product comprising a non-transitory computer-readable medium further comprising:
-
computer-readable code for receiving a query having a select list, a from element, and a summary filter having a filter condition; computer-readable code for analyzing the filter condition to determine a filter group of the filter condition, the filter group comprising a list of expressions over which the filter condition is computed; computer-readable code for creating a derived table for computing the filter condition, the derived table having a select list, creating the derived table comprising; adding the list of expressions of the filter group to the derived table as one or more columns of the derived table'"'"'s select list; and adding the filter condition to the derived table as a one or more columns of the derived table'"'"'s select list; computer-readable code for transforming the received query by combining the received query with the derived table, transforming the received query comprising; traversing the select list of the received query and transforming one or more aggregates of the select list to reference one or more of the columns of the derived table; transforming the from element of the received query to reference the derived table; and adding a WHERE clause to the transformed original query, the WHERE clause based on the filter condition and referencing one or more of the columns of the derived table. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification