Doc: reword discussion of asterisk after table names in FROM.

The syntax "tablename *" has been obsolete for years, but we want to
retain it and its documentation for backward compatibility reasons.
However, the documentation wording was confusing and could be
understood to mean that "tablename *" is the same as "ONLY tablename".

Reported-by: Jochen Bandhauer <jochen.bandhauer@gmx.net>
Author: Laurenz Albe <laurenz.albe@cybertec.at>
Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/178125831604.1285960.8250607197280951685@wrigleys.postgresql.org
This commit is contained in:
Tom Lane 2026-06-15 13:07:57 -04:00
parent ca6969629d
commit 8ebbf79a83

View file

@ -143,11 +143,13 @@ FROM <replaceable>table_reference</replaceable> <optional>, <replaceable>table_r
</para>
<para>
Instead of writing <literal>ONLY</literal> before the table name, you can write
<literal>*</literal> after the table name to explicitly specify that descendant
tables are included. There is no real reason to use this syntax any more,
because searching descendant tables is now always the default behavior.
However, it is supported for compatibility with older releases.
You can write <literal>*</literal> after the table name to explicitly
specify that descendant tables are included, which is the opposite of
<literal>ONLY</literal>. There is no real reason to write
<literal>*</literal> any more, because searching descendant tables has
been the default behavior since <productname>PostgreSQL</productname>
version 10. However, it remains supported for compatibility with older
releases.
</para>
<sect3 id="queries-join">