Re: Calling functions from within pl/pgsql

From: "Pavel Stehule" <pavel(dot)stehule(at)gmail(dot)com>
To: "Achilleas Mantzios" <achill(at)matrix(dot)gatewaynet(dot)com>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Calling functions from within pl/pgsql
Date: 2007-12-04 13:41:51
Message-ID: 162867790712040541j296bbc8dt9383293690872c64@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Hello

a := exprx

is internally translated :
get result of SELECT exprx
and store it to a

so you can write select sin(10); then you can a := sin(10)

but you can too use subselect like:

SELECT (SELECT v FROM foo LIMIT 1) ~ you can write

a := (SELECT v FROM foo LIMIT 1);

that is equal to SELECT INTO a v FROM foo

Pavel

> > http://www.postgresql.org/docs/8.2/interactive/plpgsql-statements.html#PLPG
> >SQL-STATEMENTS-ASSIGNMENT
>
> Sure, i missed the
> "As explained above, the expression in such a statement is evaluated by means
> of an SQL SELECT command sent to the main database engine. The expression
> must yield a single value."
> part.
> Thanx.
>
> >
> > Regards
> > Pavel Stehule
> >
> > > --
> > > Achilleas Mantzios
> > >
> > > ---------------------------(end of broadcast)---------------------------
> > > TIP 6: explain analyze is your friend
>
>
>
> --
> Achilleas Mantzios
>

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Ehab Galal 2007-12-04 22:25:09 marking tuples
Previous Message Achilleas Mantzios 2007-12-04 13:23:04 Re: Calling functions from within pl/pgsql