From 3bfe26bd4ce11ee5bd2a2f240ee24e220f3f8635 Mon Sep 17 00:00:00 2001 From: Bruce Momjian <bruce@momjian.us> Date: Thu, 14 Jul 2022 15:33:28 -0400 Subject: [PATCH] doc: clarify that "excluded" ON CONFLICT is a single row Original patch by David G. Johnston. Reported-by: David G. Johnston Discussion: https://postgr.es/m/CAKFQuwa4J0+WuO7kW1PLbjoEvzPN+Q_j+P2bXxNnCLaszY7ZdQ@mail.gmail.com Backpatch-through: 10 --- doc/src/sgml/ref/insert.sgml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/ref/insert.sgml b/doc/src/sgml/ref/insert.sgml index 558660ccc58..c3f49f73980 100644 --- a/doc/src/sgml/ref/insert.sgml +++ b/doc/src/sgml/ref/insert.sgml @@ -181,7 +181,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> @@ -401,7 +401,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>