John McCawley <nospam(at)hardgeus(dot)com> writes:
> I think I got it:
> CREATE FUNCTION new_get_emp_id() RETURNS INTEGER AS $$ select emp_id
> from secureview.tbl_employee where username = (SELECT current_user) $$
> LANGUAGE SQL IMMUTABLE;
> I made the function immutable so it only calls it once, therefore no
> longer requiring a call per-row.
Since it's obviously *not* immutable, this will come back to bite you
sooner or later (probably sooner). Labeling it STABLE would be
reasonable, although I'm not certain how much that helps you. Do you
have indexes on the columns it's being compared to?
regards, tom lane