Re: Help trying to write my first plpgsql function... - Mailing list pgsql-general

From Bjørn T Johansen
Subject Re: Help trying to write my first plpgsql function...
Date
Msg-id 433101E6.6030309@havleik.no
Whole thread Raw
In response to Re: Help trying to write my first plpgsql function...  (hubert depesz lubaczewski <depesz@gmail.com>)
List pgsql-general
I am not sure why I used subselect, I just saw an example and followed it..

But now it's working as it should... Thx for all the help! :)


BTJ

On 9/19/05, Bjørn T Johansen <btj ( at ) havleik ( dot ) no> wrote:

    CREATE OR REPLACE FUNCTION trykkStatus (pressID INTEGER)
    RETURNS SetOf trykkstatus_type AS '
    DECLARE
        orderID ordrenew.id%TYPE;
        tmprec trykkstatus_type%ROWTYPE;
    BEGIN
    select id into orderID from ordrenew where now() between trykkstart and produsert and
    presseid = pressID limit 1;
    if not found then
       return;
    end if;
    select into tmprec (select 1 as colid, ordrenew.id, trykkstart, produsert,
    presseid, product.name from ordrenew left outer join product on ordrenew.productid =
    product.id where produsert < (select trykkstart from ordrenew where id=orderID) and
    presseid = pressID order by produsert desc limit 1);



why do you use subselect here?
just do:
select 1 as colid, ordenew.id..... into tmprec from ordrenew left ....;


    return next tmprec;
    END;


dont forget to add "return;" before END;

depesz


pgsql-general by date:

Previous
From: Matthew Peter
Date:
Subject: array_dims array_lower/upper distance
Next
From: Roman Neuhauser
Date:
Subject: Re: More efficient INs when comparing two columns