Aren
On Thu, May 12, 2011 at 1:27 PM, Aren Cambre <aren@xxxxxxxxxxxxxx> wrote:
This is a perfect example of a place where you could push some work out of the application and into the database. You can consolidate your 1 to 101 queries into a single query. If you use:
WHERE rte_nm='SH71' AND rm >= 206 AND rm <= 306 ORDER BY abs(rm - 256), rm - 256 DESC LIMIT 1
it will always return the same value as the first matching query from your list, and will never have to make more than one trip to the database. Your one trip might be slightly slower than any one of the single trips above, but it will certainly be much faster in the case where you have to hit any significant % of your 101 potential queries.
THANKS!! I've been obsessing so much about parallelism that I hadn't spent much time finding better queries.Aren