help replacing expresion in plpgsql

Started by Juan Pablo Lover 12 years ago2 messagesgeneral
Jump to latest
#1Juan Pablo L
jpablolorenzetti@gmail.com

Hi, i have a function that receives a parameter which represents days:

FUNCTION aaa_recharge_account(expdays integer)

i want to add those days to the CURRENT_DATE, but i do not know how to do
it, i have tried several ways to replace that in an expresion like:

newexpdate := CURRENT_TIMESTAMP + interval '$1 days' using expdays;
(newexpdate is declared as timestamp)

and many more but none work, can someone please help me to find out how can
i replace that parameter into an expression that i can add to
CURRENT_TIMESTAMP or any other way that i can accomplish what i need which
is to add that parameter to the current timestamp. thanks!!!

#2Laurenz Albe
laurenz.albe@cybertec.at
In reply to: Juan Pablo L (#1)
Re: help replacing expresion in plpgsql

Juan Pablo L wrote:

Hi, i have a function that receives a parameter which represents days:

FUNCTION aaa_recharge_account(expdays integer)

i want to add those days to the CURRENT_DATE, but i do not know how to do it, i have tried several
ways to replace that in an expresion like:

newexpdate := CURRENT_TIMESTAMP + interval '$1 days' using expdays;
(newexpdate is declared as timestamp)

and many more but none work, can someone please help me to find out how can i replace that parameter
into an expression that i can add to CURRENT_TIMESTAMP or any other way that i can accomplish what i
need which is to add that parameter to the current timestamp. thanks!!!

There are many ways.
Two I can think of right away:

newexpdate := CURRENT_TIMESTAMP + CAST(expdays || ' days' AS interval);

newexpdate := CURRENT_TIMESTAMP + expdays * INTERVAL '1 days';

Yours,
Laurenz Albe

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general