CPC G06F 16/2456 (2019.01) [G06F 16/2237 (2019.01); G06F 16/2448 (2019.01); G06F 16/24528 (2019.01); G06F 16/2453 (2019.01); G06F 16/24542 (2019.01); G06F 16/24544 (2019.01); G06F 16/24547 (2019.01)] | 16 Claims |
1. A method of performing a join of a plurality of tables, the method comprising:
receiving, at a computer system, a query identifying a plurality of tables to be joined;
identifying, by the computer system, one or more first entries in a first table that satisfy one or more criteria included in the query;
setting, by the computer system, one or more flags of first flags of a first active flag structure to indicate a true value in response to identification of a corresponding entry of the one or more first entries in the first table that satisfies at least one criterion of the one or more criteria, wherein at least one of the first flags indicates a true value, and wherein another flag of the first flags indicates a false value when another corresponding entry of the one or more first entries does not satisfy the one or more criteria included in the query;
identifying, by the computer system, keys corresponding to one or more second entries in a second table based on the identified one or more first entries in the first table, wherein the keys are foreign keys that correspond to primary keys in the second table;
using the identified keys to generate a request corresponding to the one or more second entries in the second table, wherein the request includes a plurality of separate requests;
determining, by the computer system, an identifier for each of the identified keys, the identifier specifying a memory location for a corresponding second entry;
sending, by the computer system, the request which includes sending the plurality of separate requests based on the identifier; and
updating, by the computer system, at least one of the first flags of the first active flag structure that indicate a true value to indicate a false value based on at least one separate response to the request.
|