|
rpg400-l-request@xxxxxxxxxxxx wrote: > 5. RE: a need for speed (Joe Pluta) > >> From: Tom Liotta >> >> AFAIK, Booth's method would "work", but Scott's _could_ easily be >faster. > >Scott's won't work. In the data given, he'd get a record of 0001/0092 >for terminal JSN, not two separate records as requested. Ah, yes. It's not so much the range of suffixes as it is all of the various sub-ranges with a 'terminal' group. In some ways, it's determining which suffixes aren't used for a terminal. I see. Every record indeed needs to be read and program logic needs to detect when continuity breaks occur on sub-ranges. So if I understand, the terminal could have suffixes 0001, 0002, 0003, 0005 and 0006. That results in two sub-ranges -- 0001-0003 and 0005-0006 -- within that terminal. And 'terminal' causes a level break so that consecutive suffixes that cross groups still cause sub-range breaks. There doesn't seem to be a good way out. Booth's method works for marking the 'terminal' boundaries even though every individual record must still be... hmmm... Well, actually, it shouldn't be necessary to READ many records if the index is built and includes suffix -- SETLL could be used just to see if an index entry exists. Then increment suffix in the search key and do another SETLL. Continue until no hit and then READ the next higher record to get the new search values. The key before the no-hit condition would mark the upper end of a sub-range. The record READ after the no-hit would be the lower end of the next sub-group and possibly mark a 'terminal' boundary also. Might end up with _relatively_ very few records actually read. Tom Liotta
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.