×

System and method of formulating queries in relational databases

  • US 7,296,040 B2
  • Filed: 04/29/2004
  • Issued: 11/13/2007
  • Est. Priority Date: 04/29/2003
  • Status: Expired due to Fees
First Claim
Patent Images

1. A method of creating a report and preventing multiple-counting in a computer-based business intelligence system, using a client application receiving user inputs and a metadata model containing model objects that represent data sources, the method comprising the steps of:

  • a) defining a model based on an existing database comprising a plurality of query subjects, each of the plurality of query subject having at least one fact query item and one primary key;

    b) generating a hierarchy of sets and subsets of key query items in the plurality of query subjects within the model according to dimensional information;

    c) accepting an input request from a user to define contents of the report;

    d) determining an expression to extract data from the database to fulfill the input request;

    e) decomposing the expression into subqueries using the hierarchy of sets and subsets of key query items to prevent multiple-counting of data;

    f) accessing the data using the subqueries; and

    g) producing the report;

    wherein the step of generating the hierarchy of sets and subsets of key query items further comprises the steps of;

    i. computing a unique set of determinants for a first query subject where a determinant is related to a first set of key query items;

    ii. detecting a potential for multiple counting by relating a first subset of the first set of key query items of the first query subject to a second query subject;

    iii. relating a second and further subsets of the first subset of the first set of key query items of the first query subject to another query subject where the potential for multiple counting is detected; and

    iv. orgranizing the sets and subsets of key query items into a hierarchy so that the highest level of the hierarchy has fewest key query items and each lower level has more key query items, and each higher level has a set of key query items that is a subset of its immediate lower level, to resolve potential multiple-counting of query items.

View all claims
  • 4 Assignments
Timeline View
Assignment View
    ×
    ×