2010/3/30 Pavel Stehule <pavel.steh...@gmail.com>: > Hello, > > I was noticed on little bit strange feature of PostgreSQL 8.4 and 9.0 > > we can use a non existing column "name". What does mean? > > > postgres=# create table h(a int, b int); > CREATE TABLE > Time: 2,604 ms > postgres=# insert into h values(199,22); > INSERT 0 1 > Time: 0,970 ms > postgres=# explain verbose select h.name from h; > QUERY PLAN > ------------------------------------------------------------- > Seq Scan on public.h (cost=0.00..42.10 rows=2140 width=32) > Output: (h.*)::name > (2 rows) > > Time: 0,727 ms > postgres=# select h.name from h; > name > ---------- > (199,22) > (1 row) > > Time: 0,589 ms > postgres=#
FYI this has caused me (and presumably a few other people) a bit of head-scratching, e.g.: http://archives.postgresql.org/pgsql-general/2010-03/msg00362.php I imagine it has some potential as a 'gotcha', as "name" is hardly an uncommon column name, but it's not an issue which can easily researched... Ian Barwick -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers