× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



I have a *SRVPGM that calls a procedure a lot, and I need to speed it up.

Here's the entire code for the procedure:
EXEC SQL
Select count(*)
Into :rc
From MY_TABLE
Where COLUMN1 = :local1 and COLUMN2 = :local2 and COLUMN3 = :local3
And (COLUMN4 = :local4 or :local4 = '');
Return (SQLSTATE = '00000' and rc > 0);

MY_TABLE is reloaded once a day and is otherwise static. It has 9K rows that are 24 bytes long (it only has the 4 columns).

I know I could do a CHAIN and gain a little bit, but I'm hoping for more. My thought is to on the first call, read the entire table into a sorted array and have the procedure do a couple of %lookup()'s. Is there a better way?

TIA

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.