"Jim Nasby" <[EMAIL PROTECTED]> writes: > IF I run the following with the a < 2900 condition first, the more > expensive EXISTS only gets executed when needed, but if I change the > order of the OR's, the EXISTS is always executed. It would be good if > the optimizer could re-order the OR conditions based on estimated > cost (granted, this wouldn't work very well if you've got functions > in the OR, but it'd still be useful):
I looked at this for a bit. It's in principle do-able but I'm not sure it's a good idea. The problem is that while AND'ed condition lists are usually fairly short and hence cheap to sort, OR'ed condition lists are not infrequently very long --- nobody blinks an eye at hundreds of items in an IN-list for instance. I'm afraid we'd waste a lot more cycles sorting than we could hope to regain. regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend