Thread: problems with pgplsql looping through query results (FOR row IN)

problems with pgplsql looping through query results (FOR row IN)

From
Feite Brekeveld
Date:
Hi,

 Trying  to get grip on FOR row IN select clause using this
testfunction.

The FOR row|record in is the one I can't get to work.

CREATE FUNCTION  dosomething (varchar)
RETURNS integer
AS '
DECLARE
    _conn_id ALIAS FOR $1;
    ts integer;
    cdrrec record;
BEGIN
  ts := 0;
  FOR row IN
     SELECT *
     FROM cdr_accounting
                 WHERE connection_id = _conn_id
  LOOP
    ts := ts + row.time_stamp
  END LOOP;

  return ts;
END;'
LANGUAGE 'plpgsql';

How to get this one to work ?

Thanks,

--
Feite Brekeveld
feite.brekeveld@osiris-it.nl
http://www.osiris-it.nl




Re: problems with pgplsql looping through query results (FOR row IN)

From
Tom Lane
Date:
Feite Brekeveld <feite.brekeveld@osiris-it.nl> writes:
>  Trying  to get grip on FOR row IN select clause using this
> testfunction.

"row" should be the name of a row variable; it's not a keyword.

            regards, tom lane