On Mon, 3 Apr 2006 14:57:14 +1000, "Harvey, Allan AC" <[EMAIL PROTECTED]> wrote:
> Hi all,
> 
> Can anyone offer suggestions on how to realise this function....
> 
> It is the $1 as the table name that is the problem.
> 
> I'm using Version 7.4.5
> 
> create or replace function last_scan( varchar, varchar ) returns float as '
>     declare
>         result float;
> 
>     begin
>         result := value from $1 where parameter = $2 order by dt desc limit 1;
> 
>         return result;
>     end;
> ' LANGUAGE plpgsql;

try executing the query

declare
    r record;
begin
    for r in execute 'select value from '||quote_ident($1)||' where
    parameter = '||quote_literal($2)||' order by dt desc limit 1' loop
        return r.value;
    end loop;
    return null;
end;

klint.

+---------------------------------------+-----------------+
: Klint Gore                            : "Non rhyming    :
: EMail   : [EMAIL PROTECTED]           :  slang - the    :
: Snail   : A.B.R.I.                    :  possibilities  :
: Mail      University of New England   :  are useless"   :
:           Armidale NSW 2351 Australia :     L.J.J.      :
: Fax     : +61 2 6772 5376             :                 :
+---------------------------------------+-----------------+

---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

               http://archives.postgresql.org

Reply via email to