Tuesday, September 9, 2008

Re: [SQL] PL/pgSQL function syntax question?

--- On Mon, 9/8/08, Ruben Gouveia <rubes7202@gmail.com> wrote:

> From: Ruben Gouveia <rubes7202@gmail.com>
> Subject: [SQL] PL/pgSQL function syntax question?
> To: "pgsql-sql" <pgsql-sql@postgresql.org>
> Date: Monday, September 8, 2008, 9:40 PM
> i get the following error when i try and create the
> following function:
>
> Basically, i am trying to have two different dates compared
> and only the
> most recent returned to me. This seems pretty straight
> forward, what I am
> doing wrong here?
>
> create or replace function fcn_pick_date(v_dt date)
> returns date as $$
> DECLARE
> v_dt date;
> BEGIN
> for v_record in select last_periodic, last_boot
> from mediaportal
> loop
> if v_dt >= v_record.last_boot then
> v_dt := v_record.last_periodic;
> else
> v_dt := v_record.last_boot;
> end if;
> end loop;
> return (v_dt);
> END;
> $$ LANGUAGE 'plpgsql';
>
>
> ERROR: loop variable of loop over rows must be record or
> row variable at or
> near "loop" at character 195
>
> ********** Error **********
>
> ERROR: loop variable of loop over rows must be record or
> row variable at or
> near "loop"
> SQL state: 42601
> Character: 195

where you declare v_record?

i think you have declare v_record to record or var array



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

No comments: