Hi all,
I need to to change an ip addres in a plpgsql function from aaa.bbb.ccc.ddd to an sring containing "aaa bbb ccc ddd
upload".
The following code does not work. It complaines about the replace line (or is it the assignment?):
ERROR: syntax error at or near "replace" at character 1
CONTEXT: PL/pgSQL function "getcustomerdownload" line 14 at SQL statement) :
CREATE OR REPLACE FUNCTION getcustomerdownload(text, timestamp, timestamp)
RETURNS int4 AS
'
DECLARE
my_ipaddress inet;
my_ipaddress_as_text text;
BEGIN
select into my_ipaddress customertable.ipaddress
from
(
select customer.objectid, getcustomername(customer.objectid) as customername, customer.ipaddress from customer
)
as customertable
where customertable.customername like ''$1%'';
my_ipaddress_as_text := host(my_ipaddress);
replace(my_ipaddress_as_text ,''.'','' '');
return cast( (sum(bytes)/(1024*1024)) as int8) from logs
where
rule_name = my_ipaddress_as_text | '' upload''
and
that_time between cast( abstime($2) as int4) and cast( abstime($3) as int4);
END
'
LANGUAGE 'plpgsql' VOLATILE;
Does anyone have any idea of how to do this?
TIA
Groeten,
Joost Kraaijeveld
Askesis B.V.
Molukkenstraat 14
6524NB Nijmegen
tel: 024-3888063 / 06-51855277
fax: 024-3608416
e-mail: J.Kraaijeveld@Askesis.nl
web: www.askesis.nl