On Thu, Jan 26, 2012 at 3:37 PM, Jon Smark <jon.sm...@yahoo.com> wrote:

> Hi,
>
> Is it possible to do the equivalent of let-bindings in a pure SQL function?
> I have a SELECT that invokes "now" multiple times.  It would be nicer
> to do it only once and reuse the value.  Something like this:
>
> LET right_now = SELECT now () IN
> SELECT * FROM my_table WHERE right_now >= start AND ...
>
> In PL/pgSQL this is easy, but I wonder about SQL...
>
>
WITH param AS ( select now() as p_start, somefunc() as p_something )
SELECT * FROM param,my_table WHERE right_now >= param.p_start AND ...

Reply via email to