US 12,271,367 B1
Method and apparatus for comparing rows of subsets of two database tables without regard to an original order of rows in either database table
Eugene P. Jarema, Downingtown, PA (US); Paul J. Holenstein, Downingtown, PA (US); Bruce D. Holenstein, Malvern, PA (US); and Dylan R. Holenstein, Newtown Square, PA (US)
Assigned to GRAVIC, INC, Malvern, PA (US)
Filed by Gravic, Inc., Malvern, PA (US)
Filed on Jun. 18, 2024, as Appl. No. 18/747,171.
Application 18/747,171 is a continuation of application No. 17/862,669, filed on Jul. 12, 2022, granted, now 12,019,611.
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 17/00 (2019.01); G06F 7/00 (2006.01); G06F 16/22 (2019.01); G06F 16/23 (2019.01); G06F 16/25 (2019.01)
CPC G06F 16/2358 (2019.01) [G06F 16/2255 (2019.01); G06F 16/258 (2019.01)] 31 Claims
OG exemplary drawing
 
1. An automated method for comparing a first database table and a second database table with each other to produce a table of differences therebetween, wherein the first database table and the second database table include one or more subsets of data that are intended to match each other, the first database table and the second database table each including multiple rows, the method comprising:
(a) generating, by a processor, indicia for:
(i) each of the multiple rows of a subset of the first database table, wherein the subset of the first database table includes less than all of the rows of first database table, and
(ii) each of the multiple rows of a subset of the second database table;
(b) comparing, in a comparison engine, the generated indicia for each of the multiple rows of the subset of the first database table with the generated indicia for each of the multiple rows of the subset of the second database table on a row-by-row basis, wherein the comparing occurs without regard to an original order of the rows in either the first database table or the second database table;
(c) identifying, by the comparison engine, any generated indicia for each of the multiple rows of the subset of the first database table that are not present in the generated indicia for each of the multiple rows of the subset of the second database table, thereby identifying a first set of mismatched indicia;
(d) identifying, by the comparison engine, any generated indicia for each of the multiple rows of the subset of the second database table that are not present in the generated indicia for each of the multiple rows of the subset of the first database table, thereby identifying a second set of mismatched indicia; and
(e) populating the table of differences with the generated indicia identified in steps (c) and (d).