summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc-xc/src/sgml/ref/create_table.sgmlin2
-rw-r--r--doc-xc/src/sgml/ref/create_view.sgmlin2
-rw-r--r--doc-xc/src/sgml/ref/select.sgmlin2
-rw-r--r--doc-xc/src/sgml/sql.sgmlin41
4 files changed, 29 insertions, 18 deletions
diff --git a/doc-xc/src/sgml/ref/create_table.sgmlin b/doc-xc/src/sgml/ref/create_table.sgmlin
index 30456dc2c4..121b77e4f4 100644
--- a/doc-xc/src/sgml/ref/create_table.sgmlin
+++ b/doc-xc/src/sgml/ref/create_table.sgmlin
@@ -83,7 +83,7 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXI
<!## end>
<!## XC>
<synopsis>
-CREATE TABLE <replaceable class="PARAMETER">table_name</replaceable> ( [
+CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } | UNLOGGED ] TABLE [ IF NOT EXISTS ] <replaceable class="PARAMETER">table_name</replaceable> ( [
{ <replaceable class="PARAMETER">column_name</replaceable> <replaceable class="PARAMETER">data_type</replaceable> [ DEFAULT <replaceable>default_expr</replaceable> ] [ <replaceable class="PARAMETER">column_constraint</replaceable> [ ... ] ]
| <replaceable>table_constraint</replaceable>
| LIKE <replaceable>parent_table</replaceable> [ <replaceable>like_option</replaceable> ... ] }
diff --git a/doc-xc/src/sgml/ref/create_view.sgmlin b/doc-xc/src/sgml/ref/create_view.sgmlin
index 0950606870..163fd1cb28 100644
--- a/doc-xc/src/sgml/ref/create_view.sgmlin
+++ b/doc-xc/src/sgml/ref/create_view.sgmlin
@@ -28,7 +28,7 @@ CREATE [ OR REPLACE ] [ TEMP | TEMPORARY ] VIEW <replaceable class="PARAMETER">n
<!## end>
<!## XC>
<synopsis>
-CREATE [ OR REPLACE ] VIEW <replaceable class="PARAMETER">name</replaceable> [ ( <replaceable class="PARAMETER">column_name</replaceable> [, ...] ) ]
+CREATE [ OR REPLACE ] [ TEMP | TEMPORARY ] VIEW <replaceable class="PARAMETER">name</replaceable> [ ( <replaceable class="PARAMETER">column_name</replaceable> [, ...] ) ]
AS <replaceable class="PARAMETER">query</replaceable>
</synopsis>
<!## end>
diff --git a/doc-xc/src/sgml/ref/select.sgmlin b/doc-xc/src/sgml/ref/select.sgmlin
index 4e8d74a876..a50df4826e 100644
--- a/doc-xc/src/sgml/ref/select.sgmlin
+++ b/doc-xc/src/sgml/ref/select.sgmlin
@@ -34,7 +34,6 @@ PostgreSQL documentation
<!## PG>
<!-- NOTICE:
No WITH
- No HAVING
No WINDOW
-->
<synopsis>
@@ -75,6 +74,7 @@ SELECT [ ALL | DISTINCT [ ON ( <replaceable class="parameter">expression</replac
[ FROM <replaceable class="parameter">from_item</replaceable> [, ...] ]
[ WHERE <replaceable class="parameter">condition</replaceable> ]
[ GROUP BY <replaceable class="parameter">expression</replaceable> [, ...] ]
+ [ HAVING <replaceable class="parameter">condition</replaceable> [, ...] ]
[ { UNION | INTERSECT | EXCEPT } [ ALL ] <replaceable class="parameter">select</replaceable> ]
[ ORDER BY <replaceable class="parameter">expression</replaceable> [ ASC | DESC | USING <replaceable class="parameter">operator</replaceable> ] [ NULLS { FIRST | LAST } ] [, ...] ]
[ LIMIT { <replaceable class="parameter">count</replaceable> | ALL } ]
diff --git a/doc-xc/src/sgml/sql.sgmlin b/doc-xc/src/sgml/sql.sgmlin
index 7547888b7d..2ed196f3d4 100644
--- a/doc-xc/src/sgml/sql.sgmlin
+++ b/doc-xc/src/sgml/sql.sgmlin
@@ -853,6 +853,8 @@ A &lt; B + 3.
<command>SELECT</command> statement,
used to retrieve data. The syntax is:
+<!## PG>
+<!-- NO INTO -->
<synopsis>
SELECT [ ALL | DISTINCT [ ON ( <replaceable class="PARAMETER">expression</replaceable> [, ...] ) ] ]
* | <replaceable class="PARAMETER">expression</replaceable> [ [ AS ] <replaceable class="PARAMETER">output_name</replaceable> ] [, ...]
@@ -867,6 +869,21 @@ SELECT [ ALL | DISTINCT [ ON ( <replaceable class="PARAMETER">expression</replac
[ OFFSET <replaceable class="PARAMETER">start</replaceable> ]
[ FOR { UPDATE | SHARE } [ OF <replaceable class="parameter">table_name</replaceable> [, ...] ] [ NOWAIT ] [...] ]
</synopsis>
+<!## end>
+<!## XC>
+<synopsis>
+SELECT [ ALL | DISTINCT [ ON ( <replaceable class="PARAMETER">expression</replaceable> [, ...] ) ] ]
+ * | <replaceable class="PARAMETER">expression</replaceable> [ [ AS ] <replaceable class="PARAMETER">output_name</replaceable> ] [, ...]
+ [ FROM <replaceable class="PARAMETER">from_item</replaceable> [, ...] ]
+ [ WHERE <replaceable class="PARAMETER">condition</replaceable> ]
+ [ GROUP BY <replaceable class="PARAMETER">expression</replaceable> [, ...] ]
+ [ HAVING <replaceable class="PARAMETER">condition</replaceable> [, ...] ]
+ [ { UNION | INTERSECT | EXCEPT } [ ALL ] <replaceable class="PARAMETER">select</replaceable> ]
+ [ ORDER BY <replaceable class="parameter">expression</replaceable> [ ASC | DESC | USING <replaceable class="parameter">operator</replaceable> ] [ NULLS { FIRST | LAST } ] [, ...] ]
+ [ LIMIT { <replaceable class="PARAMETER">count</replaceable> | ALL } ]
+ [ OFFSET <replaceable class="PARAMETER">start</replaceable> ]
+ [ FOR { UPDATE | SHARE } [ OF <replaceable class="parameter">table_name</replaceable> [, ...] ] [ NOWAIT ] [...] ]
+<!## end>
</para>
<para>
@@ -1424,15 +1441,7 @@ SELECT S.SNO, S.SNAME, COUNT(SE.PNO)
<sect3>
<title>Having</title>
-<!## XC>
-&xconly;
- <para>
- <literal>Havin</> clause has not been supported
- by <productname>Postgres-XC</> yet. This may be supported in
- the future releases.
- </para>
-<!## end>
-<!## PG>
+&common;
<para>
The HAVING clause works much like the WHERE clause and is used to
consider only those groups satisfying the qualification given in the
@@ -1472,19 +1481,21 @@ SELECT S.SNO, S.SNAME, COUNT(SE.PNO)
</para>
</example>
</para>
-<!## end>
</sect3>
<sect3>
<title>Subqueries</title>
+
+&xconly;
+<!## XC>
+ <para>
+ Subqueries in <productname>Postgres-XC</> have restrictions.
+ You may be warned if some of them cannot be handled.
+ </para>
+<!## end>
&common;
<para>
-<!## PG>
In the WHERE and HAVING clauses the use of subqueries (subselects) is
-<!## end>
-<!## XC>
- In the WHERE clause the use of subqueries (subselects) is
-<!## end>
allowed in every place where a value is expected. In this case the
value must be derived by evaluating the subquery first. The usage of
subqueries extends the expressive power of