IP Library Granted Patent US 10,810,192
Granted Patent B2
US 10,810,192 · App. 16/133,888 · Granted Oct 20, 2020

Generating a database query to dynamically aggregate rows of a data set

Inventors: Max H. Seiden (San Francisco, CA); Jason D. Frantz (San Francisco, CA); James L. Gale (San Francisco, CA); Robert C. Woollen (San Rafael, CA)
Assignee: SIGMA COMPUTING, INC.
G06F16/2423G06F16/2246G06F16/248G06F16/24556G06F40/18
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,810,192
App. No.
16/133,888
Granted
Oct 20, 2020
Kind
B2
Abstract

Generating a database query to dynamically aggregate rows of a data set including determining a hierarchical relationship between a first column and a second column within a spreadsheet structure, wherein the first column and the second column comprise rows of the data set; receiving a calculation for a third column within the spreadsheet structure; determining that the third column is on a same hierarchical level as the first column; and in response to determining that the third column is on the same hierarchical level as the first column, generating the database query aggregating a plurality of rows of the data set based on the calculation for the third column and the hierarchical relationship between the first column and the second column.

Claims (58)

1. A method for generating a database query to dynamically aggregate rows of a data set, the method comprising:

determining a hierarchical relationship between a first column and a second column within a spreadsheet structure, wherein the first column and the second column comprise rows of the data set;

receiving a calculation for a third column within the spreadsheet structure;

determining that the third column is on a same hierarchical level as the first column; and

in response to the determining that the third column is on the same hierarchical level as the first column, generating the database query aggregating a plurality of rows of the data set based on the calculation for the third column and the hierarchical relationship between the first column and the second column.

2. The method of claim 1 , further comprising:

receiving, in response to the database query, the aggregated plurality of rows of the data set; and

displaying, in the spreadsheet structure, the aggregated plurality of rows of the data set in the third column of the spreadsheet structure.

3. The method of claim 1 , further comprising:

determining that the third column has been moved to a same hierarchical level as the second column; and

in response to the determining that the third column has been moved to a same hierarchical level as the second column, generating a subsequent database query aggregating the plurality of rows of the data set based on the calculation for the third column and the hierarchical relationship between the first column and the second column.

4. The method of claim 1 , further comprising:

determining a change in the hierarchical relationship between the first column and the second column within the spreadsheet structure; and

in response to the determining the change in the hierarchical relationship between the first column and the second column within the spreadsheet structure, generating a subsequent database query aggregating the plurality of rows of the data set based on the calculation for the third column and the change to the hierarchical relationship between the first column and the second column.

5. The method of claim 1 , further comprising:

determining a row windowing based on the hierarchical relationship between the first column and the second column within the spreadsheet structure, and

wherein the generating the database query aggregating the plurality of rows of the data set is further based on the row windowing.

6. The method of claim 1 , wherein the determining that the third column is on the same hierarchical level as the first column comprises determining that the third column has been added to a first level in a list structure, wherein the first column has been selected as a key of the first level.

7. The method of claim 1 , wherein the database query aggregating a plurality of rows of the data set comprises a structure query language statement.

8. An apparatus for generating a database query to dynamically aggregate rows of a data set, the apparatus comprising:

a computer processor and a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

determining a hierarchical relationship between a first column and a second column within a spreadsheet structure, wherein the first column and the second column comprise rows of the data set;

receiving a calculation for a third column within the spreadsheet structure;

determining that the third column is on a same hierarchical level as the first column; and

in response to the determining that the third column is on the same hierarchical level as the first column, generating the database query aggregating a plurality of rows of the data set based on the calculation for the third column and the hierarchical relationship between the first column and the second column.

9. The apparatus of claim 8 , wherein the computer program instructions further cause the apparatus to carry out the steps of:

receiving, in response to the database query, the aggregated plurality of rows of the data set; and

displaying, in the spreadsheet structure, the aggregated plurality of rows of the data set in the third column of the spreadsheet structure.

10. The apparatus of claim 8 , wherein the computer program instructions further cause the apparatus to carry out the steps of:

determining that the third column has been moved to a same hierarchical level as the second column; and

in response to the determining that the third column has been moved to a same hierarchical level as the second column, generating a subsequent database query aggregating the plurality of rows of the data set based on the calculation for the third column and the hierarchical relationship between the first column and the second column.

11. The apparatus of claim 8 , wherein the computer program instructions further cause the apparatus to carry out the steps of:

determining a change in the hierarchical relationship between the first column and the second column within the spreadsheet structure; and

in response to the determining the change in the hierarchical relationship between the first column and the second column within the spreadsheet structure, generating a subsequent database query aggregating the plurality of rows of the data set based on the calculation for the third column and the change to the hierarchical relationship between the first column and the second column.

12. The apparatus of claim 8 , wherein the computer program instructions further cause the apparatus to carry out the steps of:

determining a row windowing based on the hierarchical relationship between the first column and the second column within the spreadsheet structure, and

wherein the generating the database query aggregating the plurality of rows of the data set is further based on the row windowing.

13. The apparatus of claim 8 , wherein the determining that the third column is on the same hierarchical level as the first column comprises determining that the third column has been added to a first level in a list structure, wherein the first column has been selected as a key of the first level.

14. The apparatus of claim 8 , wherein the database query aggregating a plurality of rows of the data set comprises a structure query language statement.

15. A computer program product for generating a database query to dynamically aggregate rows of a data set, the computer program product disposed upon a non-transitory computer readable medium, the computer program product comprising:

computer program instructions that, when executed, cause a computer to carry out the steps of:

determining a hierarchical relationship between a first column and a second column within a spreadsheet structure, wherein the first column and the second column comprise rows of the data set;

receiving a calculation for a third column within the spreadsheet structure;

determining that the third column is on a same hierarchical level as the first column; and

in response to the determining that the third column is on the same hierarchical level as the first column, generating the database query aggregating a plurality of rows of the data set based on the calculation for the third column and the hierarchical relationship between the first column and the second column.

16. The computer program product of claim 15 , wherein the computer program instructions further cause the computer to carry out the steps of:

receiving, in response to the database query, the aggregated plurality of rows of the data set; and

displaying, in the spreadsheet structure, the aggregated plurality of rows of the data set in the third column of the spreadsheet structure.

17. The computer program product of claim 15 , wherein the computer program instructions further cause the computer to carry out the steps of:

determining that the third column has been moved to a same hierarchical level as the second column; and

in response to the determining that the third column has been moved to a same hierarchical level as the second column, generating a subsequent database query aggregating the plurality of rows of the data set based on the calculation for the third column and the hierarchical relationship between the first column and the second column.

18. The computer program product of claim 15 , wherein the computer program instructions further cause the computer to carry out the steps of:

determining a change in the hierarchical relationship between the first column and the second column within the spreadsheet structure; and

in response to the determining the change in the hierarchical relationship between the first column and the second column within the spreadsheet structure, generating a subsequent database query aggregating the plurality of rows of the data set based on the calculation for the third column and the change to the hierarchical relationship between the first column and the second column.

19. The computer program product of claim 15 , wherein the computer program instructions further cause the computer to carry out the steps of:

determining a row windowing based on the hierarchical relationship between the first column and the second column within the spreadsheet structure, and

wherein the generating the database query aggregating the plurality of rows of the data set is further based on the row windowing.

20. The computer program product of claim 15 , wherein the determining that the third column is on the same hierarchical level as the first column comprises determining that the third column has been added to a first level in a list structure, wherein the first column has been selected as a key of the first level.

Assignments (2)
SECURITY INTEREST Recorded Aug 1, 2025
From: SIGMA COMPUTING, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 072316/0724 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2018
From: SEIDEN, MAX H.; FRANTZ, JASON D.; GALE, JAMES L.; WOOLLEN, ROBERT C.
To: SIGMA COMPUTING, INC.
Reel/Frame 046896/0799 →
Continuity (1)
Related Publication 20200089796A1 · Mar 19, 2020