Thread: pgsql: doc: adjust UPDATE/DELETE's FROM/USING to match SELECT's FROM

pgsql: doc: adjust UPDATE/DELETE's FROM/USING to match SELECT's FROM

From
Bruce Momjian
Date:
doc: adjust UPDATE/DELETE's FROM/USING to match SELECT's FROM

Previously the syntax and wording were unclear.

Reported-by: Alexey Bashtanov

Discussion: https://postgr.es/m/968d4724-8e58-788f-7c45-f7b1813824cc@imap.cc

Backpatch-through: 9.5

Branch
------
REL_10_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/b8c651b75b2133d843b4fbbd52254b55792339cd

Modified Files
--------------
doc/src/sgml/ref/delete.sgml | 20 ++++++++++----------
doc/src/sgml/ref/update.sgml | 22 +++++++++++-----------
2 files changed, 21 insertions(+), 21 deletions(-)


Re: pgsql: doc: adjust UPDATE/DELETE's FROM/USING to match SELECT'sFROM

From
Peter Eisentraut
Date:
On 2020-03-31 22:31, Bruce Momjian wrote:
> doc: adjust UPDATE/DELETE's FROM/USING to match SELECT's FROM
> 
> Previously the syntax and wording were unclear.

@@ -23,7 +23,7 @@ PostgreSQL documentation
  <synopsis>
  [ WITH [ RECURSIVE ] <replaceable 
class="parameter">with_query</replaceable> [, ...] ]
  DELETE FROM [ ONLY ] <replaceable 
class="PARAMETER">table_name</replaceable> [ * ] [ [ AS ] <replaceable 
class="parameter">alias</replaceable> ]
-    [ USING <replaceable class="PARAMETER">using_list</replaceable> ]
+    [ USING <replaceable class="parameter">from_item</replaceable> [, 
...] ]
      [ WHERE <replaceable class="PARAMETER">condition</replaceable> | 
WHERE CURRENT OF <replaceable class="PARAMETER">cursor_name</replaceable> ]
      [ RETURNING * | <replaceable 
class="parameter">output_expression</replaceable> [ [ AS ] <replaceable 
class="parameter">output_name</replaceable> ] [, ...] ]
  </synopsis>

This change doesn't make sense.  It is clearly a "using list" in the 
case of DELETE.  Trying to unify it with UPDATE is wrong because the 
syntax is in fact different.

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



Re: pgsql: doc: adjust UPDATE/DELETE's FROM/USING to match SELECT'sFROM

From
Bruce Momjian
Date:
On Thu, Apr  2, 2020 at 07:32:49AM +0200, Peter Eisentraut wrote:
> On 2020-03-31 22:31, Bruce Momjian wrote:
> > doc: adjust UPDATE/DELETE's FROM/USING to match SELECT's FROM
> > 
> > Previously the syntax and wording were unclear.
> 
> @@ -23,7 +23,7 @@ PostgreSQL documentation
>  <synopsis>
>  [ WITH [ RECURSIVE ] <replaceable
> class="parameter">with_query</replaceable> [, ...] ]
>  DELETE FROM [ ONLY ] <replaceable
> class="PARAMETER">table_name</replaceable> [ * ] [ [ AS ] <replaceable
> class="parameter">alias</replaceable> ]
> -    [ USING <replaceable class="PARAMETER">using_list</replaceable> ]
> +    [ USING <replaceable class="parameter">from_item</replaceable> [, ...]
> ]
>      [ WHERE <replaceable class="PARAMETER">condition</replaceable> | WHERE
> CURRENT OF <replaceable class="PARAMETER">cursor_name</replaceable> ]
>      [ RETURNING * | <replaceable
> class="parameter">output_expression</replaceable> [ [ AS ] <replaceable
> class="parameter">output_name</replaceable> ] [, ...] ]
>  </synopsis>
> 
> This change doesn't make sense.  It is clearly a "using list" in the case of
> DELETE.  Trying to unify it with UPDATE is wrong because the syntax is in
> fact different.

This message from Tom requested the use of "from_list":

    https://www.postgresql.org/message-id/7354.1584500334%40sss.pgh.pa.us

    I think that the DELETE synopsis should look like
    
    
        [ USING <replaceable class="parameter">from_item</replaceable> [, ...] ]
    
    
    so that there's not any question which part of the SELECT syntax we're
    talking about. 

-- 
  Bruce Momjian  <bruce@momjian.us>        https://momjian.us
  EnterpriseDB                             https://enterprisedb.com

+ As you are, so once was I.  As I am, so you will be. +
+                      Ancient Roman grave inscription +