| From: | Thomas Lockhart <lockhart(at)alumni(dot)caltech(dot)edu> |
|---|---|
| To: | "J(dot)R(dot) Onyschak" <jonyschak(at)nvisia(dot)com> |
| Cc: | pgsql-bugs(at)postgresql(dot)org |
| Subject: | Re: PostgreSQL bug in SELECT DISTINCT |
| Date: | 2001-05-03 15:19:32 |
| Message-ID: | 3AF17704.600393A4@alumni.caltech.edu |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
> When I execute the following query:
> SELECT DISTINCT title FROM division ORDER BY UPPER(title);
> I get:
> ERROR: For SELECT DISTINCT, ORDER BY expressions must appear in target list
> If I remove DISTINCT, the query works fine.
> Is this illegal or a known bug?
Illegal. I believe that allowing any function call in the "order by"
clause is an extension to SQL9x, so feel lucky that you can do it at all
;)
However,
SELECT T FROM (SELECT DISTINCT title FROM division) AS T ORDER BY
UPPER(T);
seems to work in 7.1 (but not in earlier releases). This give PostgreSQL
a chance to hold an intermediate result to sort in a second pass.
- Thomas
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2001-05-03 15:26:10 | Re: PostgreSQL bug in SELECT DISTINCT |
| Previous Message | antipode | 2001-05-03 12:44:21 | Documentation bug for pg_ctl (-s option not documented) |