On Fri, 2010-10-01 at 18:52 +0900, Hitoshi Harada wrote:
> While tackling the top-level CTEs patch, I found that INSERT ...
> VALUES isn't aware of ORDER BY / LIMIT.
> 
> regression=# CREATE TABLE t1(x int);
> CREATE TABLE
> regression=# INSERT INTO t1 VALUES (1),(2),(3) LIMIT 1;
> INSERT 0 3

That looks like a bug to me. According to the documentation:

  "Within larger commands, VALUES is syntactically allowed anywhere
   that SELECT is. Because it is treated like a SELECT by the grammar, 
   it is possible to use the ORDER BY, LIMIT..."

  -- http://www.postgresql.org/docs/9.0/static/sql-values.html

The doc for INSERT is a little less clear:
http://www.postgresql.org/docs/9.0/static/sql-insert.html

It explicitly makes room in the INSERT grammar for VALUES, but in that
branch of the grammar it doesn't make room for the ORDER BY, etc.

Regards,
        Jeff Davis


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

Reply via email to