GENERATING SQL QUERIES FROM DECLARATIVE QUERIES FOR SEMI-STRUCTURED DATA
First Claim
1. A method for generating database queries from declarative queries having a known syntax comprising:
- receiving, by one or more processors, a set of JavaScript Object Notation (JSON) query statements and an identification of a target database that supports Structured Query Language (SQL) queries;
analyzing, by one or more processors, the set of JSON query statements to build a first set of generic language-independent query tasks with identified data types, wherein fields in the set of JSON query statements map to attributes in the first set of generic language-independent query tasks;
optimizing, by one or more processors, the first set of generic language-independent query tasks by performing one or more of;
adding tasks, re-arranging tasks, and combining subsets of tasks;
building, by one or more processors, a first target database query from the optimized first set of generic language-independent query tasks reflecting features of the target database;
submitting, by one or more processors, the first target database query to the target database;
receiving, by one or more processors, a declarative query that does not include a set of JSON query statements;
analyzing, by one or more processors, the declarative query to build a second set of language-independent generic query tasks with identified data types, wherein fields in the declarative query map to attributes in the second set of language-independent generic query tasks;
optimizing, by one or more processors, the second set of generic query tasks by performing one or more of;
adding tasks, re-arranging tasks, and combining subsets of tasks;
building, by one or more processors, a second target database query from the optimized second set of language-independent generic query tasks reflecting features of the target database;
submitting, by one or more processors, the second target database query to the target database; and
providing, by one or more processors, a user with an interface for adjusting specific features and/or properties in order to customize generation of subsequent target database queries.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for generating database queries from declarative queries having a known syntax. The method includes a query preparation software receiving a declarative query for a relational database management system, in a known system form. The query preparation software then analyzes the declarative query to build a set of generic query tasks with identified data types. The query preparation software then optimizes the set of generic query tasks and builds a target database query from the optimized generic query tasks reflecting features of a target database. The method further includes submitting the target database query to the targeted database and receiving results from the target database query.
2 Citations
1 Claim
-
1. A method for generating database queries from declarative queries having a known syntax comprising:
-
receiving, by one or more processors, a set of JavaScript Object Notation (JSON) query statements and an identification of a target database that supports Structured Query Language (SQL) queries; analyzing, by one or more processors, the set of JSON query statements to build a first set of generic language-independent query tasks with identified data types, wherein fields in the set of JSON query statements map to attributes in the first set of generic language-independent query tasks; optimizing, by one or more processors, the first set of generic language-independent query tasks by performing one or more of;
adding tasks, re-arranging tasks, and combining subsets of tasks;building, by one or more processors, a first target database query from the optimized first set of generic language-independent query tasks reflecting features of the target database; submitting, by one or more processors, the first target database query to the target database; receiving, by one or more processors, a declarative query that does not include a set of JSON query statements; analyzing, by one or more processors, the declarative query to build a second set of language-independent generic query tasks with identified data types, wherein fields in the declarative query map to attributes in the second set of language-independent generic query tasks; optimizing, by one or more processors, the second set of generic query tasks by performing one or more of;
adding tasks, re-arranging tasks, and combining subsets of tasks;building, by one or more processors, a second target database query from the optimized second set of language-independent generic query tasks reflecting features of the target database; submitting, by one or more processors, the second target database query to the target database; and providing, by one or more processors, a user with an interface for adjusting specific features and/or properties in order to customize generation of subsequent target database queries.
-
Specification