diff --git a/doc/src/sgml/queries.sgml b/doc/src/sgml/queries.sgml
index 320d7053cf2..82de95a966b 100644
--- a/doc/src/sgml/queries.sgml
+++ b/doc/src/sgml/queries.sgml
@@ -1649,17 +1649,9 @@ SELECT DISTINCT ON (expression , query1 INTERSECT ALL query2
query1 EXCEPT ALL query2
- query1 and
+ where query1 and
query2 are queries that can use any of
- the features discussed up to this point. Set operations can also
- be nested and chained, for example
-
-query1 UNION query2 UNION query3
-
- which is executed as:
-
-(query1 UNION query2) UNION query3
-
+ the features discussed up to this point.
@@ -1693,6 +1685,47 @@ SELECT DISTINCT ON (expression , .
+
+
+ Set operations can be combined, for example
+
+query1 UNION query2 EXCEPT query3
+
+ which is equivalent to
+
+(query1 UNION query2) EXCEPT query3
+
+ As shown here, you can use parentheses to control the order of
+ evaluation. Without parentheses, UNION
+ and EXCEPT associate left-to-right,
+ but INTERSECT binds more tightly than those two
+ operators. Thus
+
+query1 UNION query2 INTERSECT query3
+
+ means
+
+query1 UNION (query2 INTERSECT query3)
+
+ You can also surround an individual query
+ with parentheses. This is important if
+ the query needs to use any of the clauses
+ discussed in following sections, such as LIMIT.
+ Without parentheses, you'll get a syntax error, or else the clause will
+ be understood as applying to the output of the set operation rather
+ than one of its inputs. For example,
+
+SELECT a FROM b UNION SELECT x FROM y LIMIT 10
+
+ is accepted, but it means
+
+(SELECT a FROM b UNION SELECT x FROM y) LIMIT 10
+
+ not
+
+SELECT a FROM b UNION (SELECT x FROM y LIMIT 10)
+
+