Обсуждение: Shortcut?
I'm running Postgres 7.1. I read in the documentation that the from clause can be omitted from a select statement. The example given in the documentation is: SELECT distributors.* WHERE name = 'Westwood'; I tried it on tables in our database, but it doesn't work. Is that part of earlier versions of Postgres? Thanks
Thus spake Phuong Ma
> I'm running Postgres 7.1. I read in the documentation that the from
> clause can be omitted from a select statement. The example given in the
> documentation is:
> SELECT distributors.* WHERE name = 'Westwood';
>
> I tried it on tables in our database, but it doesn't work. Is that part
> of earlier versions of Postgres?
I assume you mean this.
SELECT distributors.* WHERE distributors.name = 'Westwood';
I know that this example from my own database works.
devel=# SELECT country.country_name
devel-# WHERE country.country_id = province.country_id AND
devel-# province.prov = 'ON';country_name
--------------Canada
(1 row)
Can you tell me where you found that example. I couldn't find it in the
documentation sources.
--
D'Arcy J.M. Cain <darcy@{druid|vex}.net> | Democracy is three wolves
http://www.druid.net/darcy/ | and a sheep voting on
+1 416 425 1212 (DoD#0082) (eNTP) | what's for dinner.
darcy@druid.net (D'Arcy J.M. Cain) writes:
> Thus spake Phuong Ma
>> SELECT distributors.* WHERE name = 'Westwood';
>> I tried it on tables in our database, but it doesn't work. Is that part
>> of earlier versions of Postgres?
> I assume you mean this.
> SELECT distributors.* WHERE distributors.name = 'Westwood';
Yes: you must mention a table in FROM to make its field names available
for reference without qualification. I think we may have tightened that
in recent releases --- the current political climate is to discourage
use of tables without FROM, since SQL92 doesn't allow it at all.
> Can you tell me where you found that example. I couldn't find it in the
> documentation sources.
A quick glimpse shows that we still have it in ref/select.sgml (try
'Westward' instead of 'Westwood'). Will fix.
regards, tom lane