| From: | Luca Ferrari <fluca1978(at)gmail(dot)com> |
|---|---|
| To: | pgsql-general <pgsql-general(at)lists(dot)postgresql(dot)org> |
| Subject: | order by <tablename> |
| Date: | 2021-06-10 08:03:11 |
| Message-ID: | CAKoxK+5uLxLGo3CSeYX41mxiATbUgQ3P-KtU2FrB5X7ju1=QcQ@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
Hi all,
this could be trivial, but I found as an accident the following:
pgbench=> create table t as select v from generate_series( 1, 2 ) v;
SELECT 2
pgbench=> select * from t order by foo;
ERROR: column "foo" does not exist
LINE 1: select * from t order by foo;
^
pgbench=> select * from t order by t;
v
---
1
2
(2 rows)
The ORDER BY rejects non existent columns (right) but accepts the
table itself as an ordering expression.
Reading here <https://www.postgresql.org/docs/12/sql-select.html#SQL-ORDERBY>
I cannot really understand why it is working and which kind of
ordering it is applying at all, I suspect the same ordering as without
ORDER BY at all.
Any hint?
Just for the record, seems that supplying another table name is
rejected too, as I would expect:
pgbench=> select * from t order by pgbench_accounts;
ERROR: column "pgbench_accounts" does not exist
LINE 1: select * from t order by pgbench_accounts;
Thanks,
Luca
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Vijaykumar Jain | 2021-06-10 08:15:28 | Re: order by <tablename> |
| Previous Message | Vijaykumar Jain | 2021-06-10 07:00:28 | Re: PostgreSQL replication lag - Suggestions and questions |