Re: sub selects - Mailing list pgsql-admin

From Tom Lane
Subject Re: sub selects
Date
Msg-id 4550.1011812721@sss.pgh.pa.us
Whole thread Raw
In response to sub selects  (Jodi Kanter <jkanter@virginia.edu>)
List pgsql-admin
Jodi Kanter <jkanter@virginia.edu> writes:
> select usf_fk from am_spots where ams_pk in (select min(ams_pk), max(ams_pk=
> ) from am_spots where am_fk>135);

> I received an error saying that my subselect has too many fields. Did I use=
>  the wrong syntax or is it just a postgres rule that you can't pull more th=
> an one field back in a sub select?

It's an SQL92 rule: if you are doing "foo IN (subselect)" then the
subselect must return one column to compare to foo.  You are confusing
this case with "foo IN (scalar expression, scalar expression, ...)"
which is actually quite a different construct.

            regards, tom lane

pgsql-admin by date:

Previous
From: Jodi Kanter
Date:
Subject: sub selects
Next
From: Jodi Kanter
Date:
Subject: drop column?