"Joel Burton" <[EMAIL PROTECTED]> writes: > Is there any generalizable help would could offer to people who write > functions that have side effects? Don't use them in WHERE (or ON or HAVING) > clauses? Evaluate the function in a earlier db call, then plug the resolved > results into the SQL WHERE statement?
Certainly putting side-effects into WHERE clauses is a recipe for trouble, and it'd not be a bad idea to point that out in the docs. (I don't think it is mentioned at the moment.) When you really need to control order of evaluation, you can do it using CASE or by pushing the whole expression into a function. But these defeat optimization so should be avoided if possible. regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])