2026年8月21日(金) 16:01 Fujii Masao <[email protected]>: > > On Fri, Aug 21, 2026 at 2:48 PM Ian Lawrence Barwick <[email protected]> > wrote: > > True, but that omits the point the original documentation is making, > > i.e. that an > > AS clause should preferably specify names for all columns, so: > > > > Note that if <command>VALUES</command> is used in a > > <literal>FROM</literal> clause, > > it is not necessary to provide an <literal>AS</literal> clause, but > > it's good practice > > to do so and specify names for each column. > > > > I.e. don't do something like SELECT * FROM (values (1,2)) AS f(foo). > > Thanks for updating the patch! > > + <command>VALUES</command> are > <literal>column1</literal>,<literal>column2</literal>, > > A space should be added just after "<literal>column1</literal>,". > > > + Note that if <command>VALUES</command> is used in a > <literal>FROM</literal> clause, > + it is not necessary to provide an <literal>AS</literal> clause, > but it's good practice > + to do so and specify names for each column. (The default column names for > > Even when an alias is supplied, the AS keyword itself is optional, e.g. > FROM (VALUES (1, 2)) v(a, b). So I think it's better to avoid saying > "AS clause" here. Instead, how about using wording similar to queries.sgml, > as follows? > > Note that if <command>VALUES</command> is used in a > <literal>FROM</literal> > clause, a table alias is optional. Assigning alias names to the columns > of the <command>VALUES</command> list is optional, but is good practice.
Oh yes, that sounds much better! Regards Ian Barwick
