Subject: Documentation does not cover multiple WITH in one query

From: PG Doc comments form <[email-masked]>
Date: Wed, 22 Aug 2018 09:24:52 +0000

The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/10/static/queries-with.html
Description:

Hi. I have found
[DOC](https://www.postgresql.org/docs/10/static/queries-with.html)

it is fine, but did not cover multiple WITH in one query.

I found answer only [here](https://stackoverflow.com/a/38137037/4632019)

May you please add the example:

    WITH table1 AS (...), table2 AS (...) SELECT * FROM table1, table2

thank you

---

From: Bruce Momjian <[email-masked]>
Date: Fri, 24 Aug 2018 16:29:57 -0400

>     WITH table1 AS (...), table2 AS (...) SELECT * FROM table1, table2

Well, the SELECT manual has:

       [ WITH [ RECURSIVE ] with_query [, ...] ]

and with_query is shown as:

       with_query_name [ ( column_name [, ...] ) ] AS ( select | values | insert | update | delete )

This is standard SQL.  I don't think we are going to be able to show
every possible syntax.

-- 
  Bruce Momjian  <[email-masked]>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

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

---

From: KES <[email-masked]>
Date: Sun, 26 Aug 2018 12:08:15 +0300

Thank you. That is I am looking for.
Never thought that 'WITH' syntax is described at 'SELECT'. 

Will be very helpful if this will be mentioned on this page: https://www.postgresql.org/docs/10/static/queries-with.html
For an example:

For full syntax of `WITH` see https://www.postgresql.org/docs/10/static/sql-select.html

Thanks.

---

From: Bruce Momjian <[email-masked]>
Date: Sun, 26 Aug 2018 09:15:00 -0400

> For full syntax of `WITH` see https://www.postgresql.org/docs/10/static/sql-select.html

There is are no syntax layouts on this page or in similar sections in
the docs --- they are reserved for the reference pages.  I don't think
it makes sense to add it here.  One odd thing is that WITH can be used
with non-SELECT statements, but we only document it in SELECT, which is
odd.  I think that is because the SQL standard only uses WITH with
SELECT.