It appears there is already a greatest() and least() function available...so no need for creating this function.
On Tue, Sep 9, 2008 at 11:16 AM, Ruben Gouveia <[EMAIL PROTECTED]> wrote: > thanks pavel...that worked! I like the simplicity of your first suggestion. > > > On Tue, Sep 9, 2008 at 11:05 AM, Pavel Stehule <[EMAIL PROTECTED]>wrote: > >> try >> >> create or replace function fcn_max_dt(p_dt timestamp without time zone, >> p_dt2 timestamp without time zone) >> returns imestamp without time zone as $$ >> select greatest($1,$2); >> $$ language sql; >> >> or >> >> begin >> return greatest(p_dt, p_dt2); >> end; >> $$ language plpgsql; >> >> or >> begin >> if p_dt > p_dt2 then >> return p_dt; >> else >> return p_dt2; >> end if; >> end; >> $$ language sql; >> >> plpgsql is scripting language and almost is better minimalize number >> of statements in function. >> >> Regards >> Pavel Stehule >> >> 2008/9/9 Ruben Gouveia <[EMAIL PROTECTED]>: >> > Does this syntax look correct? Can anyone think of a better way to write >> > this? >> > >> > This function will accept two timestamp parameters and determine the >> highest >> > of the two? >> > >> > create or replace function fcn_max_dt(p_dt timestamp without time zone, >> > p_dt2 timestamp without time zone) >> > returns timestamp without time zone as $$ >> > DECLARE >> > v_dt timestamp without time zone; >> > v_dt2 timestamp without time zone; >> > >> > BEGIN >> > v_dt := p_dt; >> > v_dt2 := p_dt2; >> > >> > if v_dt >= v_dt2 then >> > return v_dt; >> > else >> > return v_dt2; >> > end if; >> > >> > END; >> > $$ LANGUAGE 'plpgsql'; >> > >> > >> > >> > >