Bruce Momjian <pgman@candle.pha.pa.us> writes:
>> If you're going to do that, *please* suggest the *correct* substitution.
>> AFAICT, our version of LIMIT m,n transposes to OFFSET m LIMIT n; but
>> your message suggests the opposite.
> Remember, the 7.1 code was:
> ! select_limit: LIMIT select_limit_value ',' select_offset_value
> ! { $$ = makeList2($4, $2); }
> This was changed a few weeks ago to match MySQL, and only today removed.
Wups, you're right, I was looking at the cvs-tip code not 7.1.
What was that about the order not being easy to remember? :-(
> However, our new message suggests the old PostgreSQL syntax, not the
> MySQL syntax. Optimally we should ship with this ordering for 7.2 and
> reverse it for 7.3 or 7.4.
Actually, it seems that the message should point out *both* the
old-Postgres and the MySQL translations. One camp or the other
is going to get burnt otherwise. Maybe:
ERROR: LIMIT #,# syntax no longer supported. Use LIMIT # OFFSET #.
If translating pre-7.2 Postgres: LIMIT m,n => LIMIT m OFFSET n
If translating MySQL: LIMIT m,n => OFFSET m LIMIT n
regards, tom lane