Обсуждение: Simple SQL
Is it possible to do something like:
select 1 as a, a*a;
in postgres?
Not SELECT 1 as a, a*2; ERROR: column "a" does not exist Regards Pavel On Tue, 21 Oct 2003, Bob Messenger wrote: > Is it possible to do something like: > > select 1 as a, a*a; > > in postgres? > > > ---------------------------(end of broadcast)--------------------------- > TIP 9: the planner will ignore your desire to choose an index scan if your > joining column's datatypes do not match >
On Fri, Oct 24, 2003 at 07:25:44AM +0200, Pavel Stehule wrote: > Not > > SELECT 1 as a, a*2; > ERROR: column "a" does not exist But you can try SELECT a, a*a FROM (select 1 as a); > On Tue, 21 Oct 2003, Bob Messenger wrote: > > > Is it possible to do something like: > > > > select 1 as a, a*a; > > > > in postgres? -- Alvaro Herrera (<alvherre[a]dcc.uchile.cl>) "Hay que recordar que la existencia en el cosmos, y particularmente la elaboración de civilizaciones dentre de él no son, por desgracia, nada idílicas" (Ijon Tichy)
Alvaro Herrera wrote:
> On Fri, Oct 24, 2003 at 07:25:44AM +0200, Pavel Stehule wrote:
>
>>Not
>>
>>SELECT 1 as a, a*2;
>>ERROR: column "a" does not exist
>
>
> But you can try
>
> SELECT a, a*a FROM (select 1 as a);
>
>
>>On Tue, 21 Oct 2003, Bob Messenger wrote:
>>
>>
>>>Is it possible to do something like:
>>>
>>> select 1 as a, a*a;
>>>
>>>in postgres?
>
>
alien=# SELECT a, a*a FROM (select 1 as a);
ERROR: sub-SELECT in FROM must have an alias
For example, FROM (SELECT ...) [AS] foo
Thanks for idea though. It led me to this:
alien=# SELECT a, a*a FROM (SELECT 2 AS a) AS a;
a | ?column?
---+----------
2 | 4
(1 row)