On 1 December 2011 22:50, Alvaro Herrera <alvhe...@commandprompt.com> wrote:
>
> Excerpts from Tom Lane's message of jue dic 01 18:32:58 -0300 2011:
>> Boszormenyi Zoltan <z...@cybertec.at> writes:
>> > 2011-12-01 20:09 keltezéssel, rep.dot....@gmail.com írta:
>> >> Binding for &quot;OFFSET :offset&quot; works fine but binding for a 
>> >> &quot;FETCH NEXT :next
>> >> ROWS ONLY&quot; raises:
>> >> syntax error at or near &quot;$2&quot;
>> >> SELECT * FROM foo OFFSET $1 ROWS FETCH NEXT $2 ROWS ONLY
>>
>> > This is not a supported syntax. Consider using
>> > SELECT * FROM foo OFFSET $1 LIMIT $2
>> > instead.

I think it's SQL2008 and is the "new" way of stating OFFSET $1 LIMIT
$2 (see docs).

>>
>> Well, actually it is supported, but you missed the fine print where it
>> says that you have to add parentheses if the offset or count isn't a
>> simple integer constant.  I'll apply a patch to make that a bit more
>> obvious.
>
> Hmm, it works with parens only in the "fetch next" clause, they don't
> seem necessary in the limit.  FWIW.

Exactly. That's why I find the need to quote the latter a bit counter
intuitive :)
cheers,
>
> alvherre=# prepare foo(int, int) as select * from generate_series(1, 200) 
> offset $1 fetch next ($2) rows only;
> PREPARE
> alvherre=# execute foo(2+3, 1+2);
>  generate_series
> -----------------
>               6
>               7
>               8
> (3 filas)

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

Reply via email to