Thomas Stepleton <tom(at)cs(dot)swarthmore(dot)edu> writes:
> Witness my latest SQL trainwreck:
>   SELECT uid, title FROM temptbl WHERE msgid NOT IN ( SELECT msgid FROM
>   temptbl ORDER BY msgid DESC LIMIT 50 );
>   ERROR:  parser: parse error at or near "order"
Unfortunately, Pgsql 7.0 doesn't support ORDER BY (nor LIMIT) in
sub-SELECTs.  These features are implemented for 7.1, but in the
meantime what you have to do is run the sub-select into a temp
table, say
SELECT msgid INTO TEMP TABLE tmp1 FROM temptbl ORDER BY msgid DESC LIMIT 50;
SELECT uid, title FROM temptbl WHERE msgid NOT IN ( SELECT msgid FROM
tmp1 );
DROP TABLE tmp1;
			regards, tom lane