why can a named subselect not be used in a where condition?

From: Markus Bertheau <twanger(at)bluetwanger(dot)de>
To: postgres sql list <pgsql-sql(at)postgresql(dot)org>
Subject: why can a named subselect not be used in a where condition?
Date: 2002-01-24 17:40:30
Message-ID: 1011894031.29186.24.camel@entwicklung01.cenes.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Hello,

cenes_test=> select version();
version
-------------------------------------------------------------
PostgreSQL 7.1.3 on i686-pc-linux-gnu, compiled by GCC 2.96
(1 row)

cenes_test=> select personen.*, (select max(last_visit) from sessions
where sessions.personen_id = personen.personen_id) as max from personen
where max between 1009148400 and 1011913200 order by max desc;
ERROR: Attribute 'max' not found

I again think that the table structure is not neccesary to understand my
question.

Well, why can't I use max in the where clause?

<comment>
I do know, thanks to Josh Berkus, that this query should be reformed
using sth like

select personen.f1, personen.f2, max(last_visit) from personen join
sessions on sessions.personen_id = personen.personen_id group by
personen.f1, personen.f2

(I know that this query doesn't include persons that don't have a row
with their personen_id in sessions)
</comment>

Related:

cenes=> select version();
version
---------------------------------------------------------------
PostgreSQL 7.0.2 on i686-pc-linux-gnu, compiled by gcc 2.95.2
(1 row)

cenes=> select personen.*, (select max(last_visit) from sessions where
sessions.personen_id = personen.personen_id) from personen where (select
max(zeitstempel) from sessions where sessions.personen_id =
personen.personen_id) between 1009148400 and 1011913200;
ERROR: ExecEvalExpr: unknown expression type 501

That is a query we have tried on 7.0.2 because of curiosity. But the
error message looks weird. What does it mean?

Thank you for you information.

Markus Bertheau

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Josh Berkus 2002-01-24 17:58:56 Re: why can a named subselect not be used in a where
Previous Message Unnikrishnan Menon 2002-01-24 15:32:18 Re: PGACCESS installation