On Fri, Jul 1, 2022 at 08:11:36AM -0700, David G. Johnston wrote: > That said, I still think that the current wording should be tweak with respect > to row vs. rows (especially if we continue to call it a table): > > Current: > "The SET and WHERE clauses in ON CONFLICT DO UPDATE have access to the > existing row using the table's name (or an alias), and to [rows] proposed > for insertion using the special excluded table." > > Change [rows] to: > > "the row" > > > I'm undecided whether "FROM excluded" should be something that works - but I > also don't think it would actually be used in any case.
I found two places where a singular "row" would be better, doc patch attached. -- Bruce Momjian <br...@momjian.us> https://momjian.us EDB https://enterprisedb.com Indecision is a decision. Inaction is an action. Mark Batterson
diff --git a/doc/src/sgml/ref/insert.sgml b/doc/src/sgml/ref/insert.sgml index a9af9959c0..022ac99b75 100644 --- a/doc/src/sgml/ref/insert.sgml +++ b/doc/src/sgml/ref/insert.sgml @@ -176,7 +176,7 @@ INSERT INTO <replaceable class="parameter">table_name</replaceable> [ AS <replac provided, it completely hides the actual name of the table. This is particularly useful when <literal>ON CONFLICT DO UPDATE</literal> targets a table named <varname>excluded</varname>, since that will otherwise - be taken as the name of the special table representing rows proposed + be taken as the name of the special table representing the row proposed for insertion. </para> </listitem> @@ -396,7 +396,7 @@ INSERT INTO <replaceable class="parameter">table_name</replaceable> [ AS <replac conflict. The <literal>SET</literal> and <literal>WHERE</literal> clauses in <literal>ON CONFLICT DO UPDATE</literal> have access to the existing row using the - table's name (or an alias), and to rows proposed for insertion + table's name (or an alias), and to the row proposed for insertion using the special <varname>excluded</varname> table. <literal>SELECT</literal> privilege is required on any column in the target table where corresponding <varname>excluded</varname>