Before commit
906bfcad7, we were not actually processing the righthand
side of a multiple-column assignment in UPDATE as a row constructor:
it was just a parenthesized list of expressions. Call it that rather
than risking confusion by people who would expect the documented behaviors
of row constructors to apply.
Back-patch to 9.5; before that, the text correctly described the construct
as a "list of independent expressions".
Discussion: <16288.
1479610770@sss.pgh.pa.us>
According to the standard, the source value for a parenthesized sub-list of
column names can be any row-valued expression yielding the correct number
of columns. <productname>PostgreSQL</productname> only allows the source
- value to be a parenthesized list of expressions (a row constructor) or a
+ value to be a parenthesized list of expressions or a
sub-<literal>SELECT</>. An individual column's updated value can be
- specified as <literal>DEFAULT</> in the row-constructor case, but not
+ specified as <literal>DEFAULT</> in the list-of-expressions case, but not
inside a sub-<literal>SELECT</>.
</para>
</refsect1>