[
https://issues.apache.org/jira/browse/TRAFODION-2522?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15903605#comment-15903605
]
ASF GitHub Bot commented on TRAFODION-2522:
-------------------------------------------
Github user zellerh commented on a diff in the pull request:
https://github.com/apache/incubator-trafodion/pull/1001#discussion_r105240889
--- Diff: docs/sql_reference/src/asciidoc/_chapters/sql_statements.adoc ---
@@ -7784,6 +7784,117 @@ SELECT (SELECT a FROM t1) FROM t GROUP BY (SELECT a
FROM t1);
SELECT a+1 FROM t GROUP BY 1+a;
```
+[[with_clause_syntax]]
+=== Syntax Description of WITH clause
+
+WITH clause, known as Common Table Expressions (CTEs) or subquery
factoring clause, was introduced in the SQL-99 standard and has been
implemented into Trafodion R2.1.
+
+For the complex expression which is referenced multiple times within the
body of SELECT Statement, WITH clause assigns it an alias which is treated like
a temporary table or an inline view that lasts only for the duration of the
query and can be referenced various times in the same query.
+
+By abstracting the complicated parts of the query into simpler, separate
and logical blocks, and materializing result set to prevent from recomputing
multiple times as the data can be easily acquired from the disk-based
intermediate materialized table rather than requeried with each reference, WITH
clause has following advantages:
--- End diff --
Also want to point out that materializing the CTE is not always a good idea
and that using the WITH clause does not automatically cause the CTE to be
materialized. The sentence above sounds like materialization will always
happen, but some of the advantages listed exist without materializing the CTE.
> Add WITH Clause
> ---------------
>
> Key: TRAFODION-2522
> URL: https://issues.apache.org/jira/browse/TRAFODION-2522
> Project: Apache Trafodion
> Issue Type: Documentation
> Reporter: Liu Yu
> Assignee: Liu Yu
>
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)