Re: bug in 9.2.2 ? subquery accepts wrong column name : upd - Mailing list pgsql-sql

From Tom Lane
Subject Re: bug in 9.2.2 ? subquery accepts wrong column name : upd
Date
Msg-id 17320.1363277866@sss.pgh.pa.us
Whole thread Raw
In response to bug in 9.2.2 ? subquery accepts wrong column name : upd  (Achilleas Mantzios <achill@matrix.gatewaynet.com>)
Responses Re: bug in 9.2.2 ? subquery accepts wrong column name : upd  (Achilleas Mantzios <achill@matrix.gatewaynet.com>)
List pgsql-sql
Achilleas Mantzios <achill@matrix.gatewaynet.com> writes:
> dynacom=# SELECT DISTINCT ON (qry.setid) qry.setid, qry.arragg[1:2] FROM 
>     (select distinct sst.setid,(array_agg(vsl.name) OVER (PARTITION BY sst.setid ORDER BY
character_length(vsl.name)))as arragg 
 
>     FROM sissets sst, vessels vsl WHERE vsl.id=sst.vslid ORDER BY sst.setid) as qry 
>      WHERE array_length(qry.arragg,1)>1  AND qry.setid IN (SELECT setid from sis_oper_cons) ORDER BY
qry.setid,array_length(qry.arragg,1);
> [ works ]

> however, there is not column setid in sis_oper_cons,

If not, that's a perfectly legal outer reference to qry.setid.

Probably not one of SQL's better design features, since it confuses
people regularly; but it's required by spec to work like that.
        regards, tom lane



pgsql-sql by date:

Previous
From: Achilleas Mantzios
Date:
Subject: bug in 9.2.2 ? subquery accepts wrong column name : upd
Next
From: JORGE MALDONADO
Date:
Subject: UPDATE query with variable number of OR conditions in WHERE