diff --git a/parser/CMakeLists.txt b/parser/CMakeLists.txt
index b1bd870..b3ddf30 100644
--- a/parser/CMakeLists.txt
+++ b/parser/CMakeLists.txt
@@ -107,6 +107,7 @@
 add_library(quickstep_parser_ParseSample ParseSample.cpp ParseSample.hpp)
 add_library(quickstep_parser_ParseSelect ../empty_src.cpp ParseSelect.hpp)
 add_library(quickstep_parser_ParseSelectionClause ParseSelectionClause.cpp ParseSelectionClause.hpp)
+add_library(quickstep_parser_ParseSetOperation ../empty_src.cpp ParseSetOperation.hpp)
 add_library(quickstep_parser_ParseSimpleTableReference ParseSimpleTableReference.cpp ParseSimpleTableReference.hpp)
 add_library(quickstep_parser_ParseStatement ../empty_src.cpp ParseStatement.hpp)
 add_library(quickstep_parser_ParseString ParseString.cpp ParseString.hpp)
@@ -257,6 +258,10 @@
                       quickstep_parser_ParseTreeNode
                       quickstep_utility_Macros
                       quickstep_utility_PtrList)
+target_link_libraries(quickstep_parser_ParseSetOperation
+                      quickstep_parser_ParseTreeNode
+                      quickstep_utility_Macros
+                      quickstep_utility_PtrList)
 target_link_libraries(quickstep_parser_ParseSimpleTableReference
                       quickstep_parser_ParseSample
                       quickstep_parser_ParseString
@@ -274,6 +279,7 @@
                       quickstep_parser_ParsePredicate
                       quickstep_parser_ParsePriority
                       quickstep_parser_ParseSelect
+                      quickstep_parser_ParseSetOperation
                       quickstep_parser_ParseString
                       quickstep_parser_ParseSubqueryTableReference
                       quickstep_parser_ParseTreeNode
@@ -293,7 +299,7 @@
 target_link_libraries(quickstep_parser_ParseSubqueryExpression
                       glog
                       quickstep_parser_ParseExpression
-                      quickstep_parser_ParseSelect
+                      quickstep_parser_ParseSetOperation
                       quickstep_utility_Macros)
 target_link_libraries(quickstep_parser_ParseSubqueryTableReference
                       quickstep_parser_ParseSubqueryExpression
@@ -347,6 +353,7 @@
                       quickstep_parser_ParseSample
                       quickstep_parser_ParseSelect
                       quickstep_parser_ParseSelectionClause
+                      quickstep_parser_ParseSetOperation
                       quickstep_parser_ParseSimpleTableReference
                       quickstep_parser_ParseStatement
                       quickstep_parser_ParseString
@@ -426,6 +433,7 @@
                       quickstep_parser_ParseSample
                       quickstep_parser_ParseSelect
                       quickstep_parser_ParseSelectionClause
+                      quickstep_parser_ParseSetOperation
                       quickstep_parser_ParseSimpleTableReference
                       quickstep_parser_ParseStatement
                       quickstep_parser_ParseString
diff --git a/parser/ParseSetOperation.hpp b/parser/ParseSetOperation.hpp
new file mode 100644
index 0000000..93e4c1b
--- /dev/null
+++ b/parser/ParseSetOperation.hpp
@@ -0,0 +1,142 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ **/
+
+#ifndef QUICKSTEP_PARSER_PARSE_SET_OPERATION_HPP_
+#define QUICKSTEP_PARSER_PARSE_SET_OPERATION_HPP_
+
+#include <string>
+#include <vector>
+
+#include "parser/ParseTreeNode.hpp"
+#include "utility/Macros.hpp"
+#include "utility/PtrList.hpp"
+
+#include "glog/logging.h"
+
+namespace quickstep {
+
+/** \addtogroup Parser
+ *  @{
+ */
+
+/**
+ * @brief A parsed representation of set operations.
+ */
+class ParseSetOperation : public ParseTreeNode {
+ public:
+  /**
+   * @brief The possible types of set operations.
+   */
+  enum SetOperationType {
+    kIntersect = 0,
+    kSelect,
+    kUnion,
+    kUnionAll
+  };
+
+  /**
+   * @brief Constructor.
+   *
+   * @param line_number Line number of the set operation token in the SQL statement.
+   * @param column_number Column number of the set operation toke in the SQL statement.
+   * @param set_operation The set operation type.
+   */
+  ParseSetOperation(const int line_number,
+                    const int column_number,
+                    const SetOperationType set_operation_type)
+      : ParseTreeNode(line_number, column_number),
+        set_operation_type_(set_operation_type) {
+  }
+
+  /**
+   * @brief Destructor.
+   */
+  ~ParseSetOperation() override {}
+
+  std::string getName() const override {
+    return "SetOperation";
+  }
+
+  /**
+   * @return The set operation type.
+   */
+  SetOperationType getOperationType() const {
+    return set_operation_type_;
+  }
+
+  /**
+   * @return The operands of the set operation.
+   */
+  const PtrList<ParseTreeNode>& operands() const {
+    return operands_;
+  }
+
+  /**
+   * @brief Add an operand for the set operation.
+   *
+   * @param operand The operand.
+   */
+  void addOperand(ParseTreeNode *operand) {
+    operands_.push_back(operand);
+  }
+
+ protected:
+  void getFieldStringItems(std::vector<std::string> *inline_field_names,
+                           std::vector<std::string> *inline_field_values,
+                           std::vector<std::string> *non_container_child_field_names,
+                           std::vector<const ParseTreeNode*> *non_container_child_fields,
+                           std::vector<std::string> *container_child_field_names,
+                           std::vector<std::vector<const ParseTreeNode*>> *container_child_fields) const override {
+    inline_field_names->push_back("set_operation_type");
+    switch (set_operation_type_) {
+      case kIntersect:
+        inline_field_values->push_back("Intersect");
+        break;
+      case kSelect:
+        inline_field_values->push_back("Select");
+        break;
+      case kUnion:
+        inline_field_values->push_back("Union");
+        break;
+      case kUnionAll:
+        inline_field_values->push_back("UnionAll");
+        break;
+      default:
+        LOG(FATAL) << "Unknown set operation type.";
+    }
+
+    container_child_field_names->push_back("children");
+    container_child_fields->emplace_back();
+    for (const ParseTreeNode &child : operands_) {
+      container_child_fields->back().push_back(&child);
+    }
+  }
+
+ private:
+  PtrList<ParseTreeNode> operands_;
+  const SetOperationType set_operation_type_;
+
+  DISALLOW_COPY_AND_ASSIGN(ParseSetOperation);
+};
+
+/** @} */
+
+}  // namespace quickstep
+
+#endif  // QUICKSTEP_PARSER_PARSE_SET_OPERATION_HPP_
diff --git a/parser/ParseStatement.hpp b/parser/ParseStatement.hpp
index cb5a1b5..d876163 100644
--- a/parser/ParseStatement.hpp
+++ b/parser/ParseStatement.hpp
@@ -34,6 +34,7 @@
 #include "parser/ParsePredicate.hpp"
 #include "parser/ParsePriority.hpp"
 #include "parser/ParseSelect.hpp"
+#include "parser/ParseSetOperation.hpp"
 #include "parser/ParseString.hpp"
 #include "parser/ParseSubqueryTableReference.hpp"
 #include "parser/ParseTreeNode.hpp"
@@ -62,7 +63,7 @@
     kCreateTable,
     kCreateIndex,
     kDropTable,
-    kSelect,
+    kSetOperation,
     kInsert,
     kCopyFrom,
     kUpdate,
@@ -479,9 +480,9 @@
 };
 
 /**
- * @brief The parsed representation of a SELECT statement.
+ * @brief The parsed representation of an UNION/INTERSECT/SELECT statement.
  **/
-class ParseStatementSelect : public ParseStatement {
+class ParseStatementSetOperation : public ParseStatement {
  public:
   /**
    * @brief Constructor.
@@ -489,18 +490,18 @@
    *
    * @param line_number Line number of the first token of this node in the SQL statement.
    * @param column_number Column number of the first token of this node in the SQL statement.
-   * @param select_query The top-level SELECT query.
+   * @param set_operation_query The top level set operation query
    * @param with_clause The WITH clause of common table query expressions.
    * @param priority_clause The PRIORITY clause of this query. If not valid or
    *        not present, this is NULL.
    **/
-  ParseStatementSelect(const int line_number,
-                       const int column_number,
-                       ParseSelect *select_query,
-                       PtrVector<ParseSubqueryTableReference> *with_clause,
-                       ParsePriority *priority_clause)
+  ParseStatementSetOperation(const int line_number,
+                             const int column_number,
+                             ParseSetOperation *set_operation_query,
+                             PtrVector<ParseSubqueryTableReference> *with_clause,
+                             ParsePriority *priority_clause)
       : ParseStatement(line_number, column_number),
-        select_query_(select_query),
+        set_operation_query_(set_operation_query),
         with_clause_(with_clause),
         priority_clause_(priority_clause) {
   }
@@ -508,20 +509,20 @@
   /**
    * @brief Destructor.
    */
-  ~ParseStatementSelect() override {
+  ~ParseStatementSetOperation() override {
   }
 
   StatementType getStatementType() const override {
-    return kSelect;
+    return kSetOperation;
   }
 
-  std::string getName() const override { return "SelectStatement"; }
+  std::string getName() const override { return "SetOperationStatement"; }
 
   /**
-   * @return Gets the top-level SELECT query.
+   * @return Gets the top-level set operation query.
    */
-  const ParseSelect* select_query() const {
-    return select_query_.get();
+  const ParseSetOperation* set_operation_query() const {
+    return set_operation_query_.get();
   }
 
   /**
@@ -549,8 +550,8 @@
       std::vector<const ParseTreeNode*> *non_container_child_fields,
       std::vector<std::string> *container_child_field_names,
       std::vector<std::vector<const ParseTreeNode*>> *container_child_fields) const override {
-    non_container_child_field_names->push_back("select_query");
-    non_container_child_fields->push_back(select_query_.get());
+    non_container_child_field_names->push_back("set_operation_query");
+    non_container_child_fields->push_back(set_operation_query_.get());
 
     if (with_clause_ != nullptr && !with_clause_->empty()) {
       container_child_field_names->push_back("with_clause");
@@ -567,11 +568,11 @@
   }
 
  private:
-  std::unique_ptr<ParseSelect> select_query_;
+  std::unique_ptr<ParseSetOperation> set_operation_query_;
   std::unique_ptr<PtrVector<ParseSubqueryTableReference>> with_clause_;
   std::unique_ptr<ParsePriority> priority_clause_;
 
-  DISALLOW_COPY_AND_ASSIGN(ParseStatementSelect);
+  DISALLOW_COPY_AND_ASSIGN(ParseStatementSetOperation);
 };
 
 /**
diff --git a/parser/ParseSubqueryExpression.cpp b/parser/ParseSubqueryExpression.cpp
index 991e00c..02fe342 100644
--- a/parser/ParseSubqueryExpression.cpp
+++ b/parser/ParseSubqueryExpression.cpp
@@ -41,7 +41,7 @@
     std::vector<std::string> *container_child_field_names,
     std::vector<std::vector<const ParseTreeNode*>> *container_child_fields) const {
   non_container_child_field_names->push_back("");
-  non_container_child_fields->push_back(query_.get());
+  non_container_child_fields->push_back(set_operation_.get());
 }
 
 }  // namespace quickstep
diff --git a/parser/ParseSubqueryExpression.hpp b/parser/ParseSubqueryExpression.hpp
index c7f9ccf..e0c0ed6 100644
--- a/parser/ParseSubqueryExpression.hpp
+++ b/parser/ParseSubqueryExpression.hpp
@@ -25,7 +25,7 @@
 #include <vector>
 
 #include "parser/ParseExpression.hpp"
-#include "parser/ParseSelect.hpp"
+#include "parser/ParseSetOperation.hpp"
 #include "utility/Macros.hpp"
 
 namespace quickstep {
@@ -46,13 +46,13 @@
    *
    * @param line_number The line number of the beginning of the subquery expression.
    * @param column_number The column number of the beginning of the subquery expression.
-   * @param query The SELECT subquery.
+   * @param set_operation The set operation subquery.
    */
   ParseSubqueryExpression(const int line_number,
                           const int column_number,
-                          ParseSelect *query)
+                          ParseSetOperation *set_operation)
       : ParseExpression(line_number, column_number),
-        query_(query) {
+        set_operation_(set_operation) {
   }
 
   ~ParseSubqueryExpression() override {
@@ -63,9 +63,9 @@
   }
 
   /**
-   * @return The SELECT subquery.
+   * @return The set operation subquery.
    */
-  const ParseSelect* query() const { return query_.get(); }
+  const ParseSetOperation* set_operation() const { return set_operation_.get(); }
 
   std::string getName() const override { return "SubqueryExpression"; }
 
@@ -81,7 +81,7 @@
       std::vector<std::vector<const ParseTreeNode*>> *container_child_fields) const override;
 
  private:
-  std::unique_ptr<ParseSelect> query_;
+  std::unique_ptr<ParseSetOperation> set_operation_;
   DISALLOW_COPY_AND_ASSIGN(ParseSubqueryExpression);
 };
 
diff --git a/parser/SqlLexer.lpp b/parser/SqlLexer.lpp
index 0953dc6..b5c2b3e 100644
--- a/parser/SqlLexer.lpp
+++ b/parser/SqlLexer.lpp
@@ -70,6 +70,7 @@
 class ParseSelectionItem;
 class ParseSelectionItemScalar;
 class ParseSelectionList;
+class ParseSetOperation;
 class ParseSimpleTableReference;
 class ParseSimpleWhenClause;
 class ParseStringKeyLiteralValues;
@@ -81,7 +82,7 @@
 class ParseStatementInsert;
 class ParseStatementInsertTuple;
 class ParseStatementInsertSelection;
-class ParseStatementSelect;
+class ParseStatementSetOperation;
 class ParseStatementQuit;
 class ParseStatementUpdate;
 class ParseSubqueryExpression;
@@ -228,6 +229,7 @@
   "insert"           return TOKEN_INSERT;
   "int"              return TOKEN_INTEGER;
   "integer"          return TOKEN_INTEGER;
+  "intersect"        return TOKEN_INTERSECT;
   "interval"         return TOKEN_INTERVAL;
   "into"             return TOKEN_INTO;
   "is"               return TOKEN_IS;
@@ -277,6 +279,7 @@
   "true"             return TOKEN_TRUE;
   "tuplesample"      return TOKEN_TUPLESAMPLE;
   "unbounded"        return TOKEN_UNBOUNDED;
+  "union"            return TOKEN_UNION;
   "unique"           return TOKEN_UNIQUE;
   "update"           return TOKEN_UPDATE;
   "using"            return TOKEN_USING;
diff --git a/parser/SqlParser.ypp b/parser/SqlParser.ypp
index 29b69d7..5db2171 100644
--- a/parser/SqlParser.ypp
+++ b/parser/SqlParser.ypp
@@ -90,6 +90,7 @@
 #include "parser/ParseSample.hpp"
 #include "parser/ParseSelect.hpp"
 #include "parser/ParseSelectionClause.hpp"
+#include "parser/ParseSetOperation.hpp"
 #include "parser/ParseSimpleTableReference.hpp"
 #include "parser/ParseStatement.hpp"
 #include "parser/ParseString.hpp"
@@ -148,6 +149,8 @@
   quickstep::ParseSelectionItem *selection_item_;
   quickstep::ParseSelectionList *selection_list_;
 
+  quickstep::ParseSetOperation *set_operation_;
+
   quickstep::ParseTableReference *table_reference_;
   quickstep::PtrList<quickstep::ParseTableReference> *table_reference_list_;
   quickstep::ParseTableReferenceSignature *table_reference_signature_;
@@ -175,7 +178,7 @@
   quickstep::PtrVector<quickstep::ParseString> *command_argument_list_;
 
   quickstep::ParseStatement *statement_;
-  quickstep::ParseStatementSelect *select_statement_;
+  quickstep::ParseStatementSetOperation *set_operation_statement_;
   quickstep::ParseStatementUpdate *update_statement_;
   quickstep::ParseStatementInsert *insert_statement_;
   quickstep::ParseStatementDelete *delete_statement_;
@@ -242,6 +245,7 @@
 %left '*' '/'
 %right UNARY_PLUS UNARY_MINUS
 %left '.'
+%left TOKEN_ALL TOKEN_UNION TOKEN_INTERSECT
 
 %token TOKEN_ADD;
 %token TOKEN_ALL;
@@ -298,6 +302,7 @@
 %token TOKEN_INNER;
 %token TOKEN_INSERT;
 %token TOKEN_INTEGER;
+%token TOKEN_INTERSECT;
 %token TOKEN_INTERVAL;
 %token TOKEN_INTO;
 %token TOKEN_JOIN;
@@ -345,6 +350,7 @@
 %token TOKEN_TRUE;
 %token TOKEN_TUPLESAMPLE;
 %token TOKEN_UNBOUNDED;
+%token TOKEN_UNION;
 %token TOKEN_UNIQUE;
 %token TOKEN_UPDATE;
 %token TOKEN_USING;
@@ -368,6 +374,7 @@
 %type <boolean_value_>
   boolean_value
   frame_mode
+  opt_all_distinct
 
 %type <literal_value_>
   literal_value
@@ -485,8 +492,12 @@
   sql_statement
   alter_table_statement
 
-%type <select_statement_>
-  select_statement
+%type <set_operation_statement_>
+  set_operation_statement
+
+%type <set_operation_>
+  set_operation_union
+  set_operation_intersect
 
 %type <select_query_>
   select_query
@@ -605,7 +616,6 @@
 
 /*
 %type <int_val>
-  opt_all_distinct      // unimplemented
   table_constraint_def  // unimplemented
   table_constraint_def_commalist        // unimplemented
   opt_table_constraint_def_commalist    // unimplemented
@@ -676,7 +686,7 @@
   | quit_statement {
     $$ = $1;
   }
-  | select_statement {
+  | set_operation_statement {
     $$ = $1;
   }
   | update_statement {
@@ -1146,13 +1156,16 @@
     $$ = new quickstep::ParseAssignment(@1.first_line, @1.first_column, $1, $3);
   };
 
-/* Select Queries */
-select_statement:
-  select_query opt_priority_clause {
-    $$ = new quickstep::ParseStatementSelect(@1.first_line, @1.first_column, $1, nullptr, $2);
+/**
+ * Set Operation Queries.
+ * Select Queries are now included in set operations.
+ **/
+set_operation_statement:
+  set_operation_union opt_priority_clause {
+    $$ = new quickstep::ParseStatementSetOperation(@1.first_line, @1.first_column, $1, nullptr, $2);
   }
-  | with_clause select_query opt_priority_clause {
-    $$ = new quickstep::ParseStatementSelect(@1.first_line, @1.first_column, $2, $1, $3);
+  | with_clause set_operation_union opt_priority_clause {
+    $$ = new quickstep::ParseStatementSetOperation(@1.first_line, @1.first_column, $2, $1, $3);
   };
 
 opt_priority_clause:
@@ -1198,23 +1211,49 @@
     $$->set_table_reference_signature($1);
   };
 
+set_operation_union:
+  set_operation_union TOKEN_UNION opt_all_distinct set_operation_intersect {
+    if ($3) {
+      $$ = new quickstep::ParseSetOperation(@1.first_line, @1.first_column, quickstep::ParseSetOperation::kUnion);
+    } else {
+      $$ = new quickstep::ParseSetOperation(@1.first_line, @1.first_column, quickstep::ParseSetOperation::kUnionAll);
+    }
+    $$->addOperand($1);
+    $$->addOperand($4);
+  }
+  | set_operation_intersect {
+    $$ = $1;
+  }
+
+set_operation_intersect:
+  set_operation_intersect TOKEN_INTERSECT select_query {
+    $$ = new quickstep::ParseSetOperation(@1.first_line, @1.first_column, quickstep::ParseSetOperation::kIntersect);
+    quickstep::ParseSetOperation *op = new quickstep::ParseSetOperation(
+        @3.first_line, @3.first_column, quickstep::ParseSetOperation::kSelect);
+    op->addOperand($3);
+    $$->addOperand($1);
+    $$->addOperand(op);
+  }
+  | select_query {
+    $$ = new quickstep::ParseSetOperation(@1.first_line, @1.first_column, quickstep::ParseSetOperation::kSelect);
+    $$->addOperand($1);
+  }
+
 select_query:
   TOKEN_SELECT opt_all_distinct selection from_clause opt_where_clause opt_group_by_clause opt_having_clause
       opt_order_by_clause opt_limit_clause opt_window_clause {
     $$ = new quickstep::ParseSelect(@1.first_line, @1.first_column, $3, $4, $5, $6, $7, $8, $9, $10);
-  };
+  }
 
 opt_all_distinct:
   {
-    /* $$ = nullptr; */
+    $$ = true;  // Distinct
   }
   | TOKEN_ALL {
-    NotSupported(&@1, yyscanner, "ALL in selection");
-    YYERROR;
+    $$ = false;  // All
   }
   | TOKEN_DISTINCT {
-    NotSupported(&@1, yyscanner, "DISTINCT in selection");
-    YYERROR;
+    $$ = true;  // Distinct
   };
 
 selection:
@@ -1252,7 +1291,7 @@
   };
 
 subquery_expression:
-  '(' select_query ')' {
+  '(' set_operation_union ')' {
     $$ = new quickstep::ParseSubqueryExpression(@1.first_line, @1.first_column, $2);
   };
 
diff --git a/parser/preprocessed/SqlLexer_gen.cpp b/parser/preprocessed/SqlLexer_gen.cpp
index 1cb0ac8..3a85df6 100644
--- a/parser/preprocessed/SqlLexer_gen.cpp
+++ b/parser/preprocessed/SqlLexer_gen.cpp
@@ -1,6 +1,6 @@
-#line 1 "SqlLexer_gen.cpp"
+#line 2 "SqlLexer_gen.cpp"
 
-#line 3 "SqlLexer_gen.cpp"
+#line 4 "SqlLexer_gen.cpp"
 
 #define  YY_INT_ALIGNED short int
 
@@ -9,89 +9,11 @@
 #define FLEX_SCANNER
 #define YY_FLEX_MAJOR_VERSION 2
 #define YY_FLEX_MINOR_VERSION 6
-#define YY_FLEX_SUBMINOR_VERSION 3
+#define YY_FLEX_SUBMINOR_VERSION 0
 #if YY_FLEX_SUBMINOR_VERSION > 0
 #define FLEX_BETA
 #endif
 
-    #define yy_create_buffer quickstep_yy_create_buffer
-
-    #define yy_delete_buffer quickstep_yy_delete_buffer
-
-    #define yy_scan_buffer quickstep_yy_scan_buffer
-
-    #define yy_scan_string quickstep_yy_scan_string
-
-    #define yy_scan_bytes quickstep_yy_scan_bytes
-
-    #define yy_init_buffer quickstep_yy_init_buffer
-
-    #define yy_flush_buffer quickstep_yy_flush_buffer
-
-    #define yy_load_buffer_state quickstep_yy_load_buffer_state
-
-    #define yy_switch_to_buffer quickstep_yy_switch_to_buffer
-
-    #define yypush_buffer_state quickstep_yypush_buffer_state
-
-    #define yypop_buffer_state quickstep_yypop_buffer_state
-
-    #define yyensure_buffer_stack quickstep_yyensure_buffer_stack
-
-    #define yylex quickstep_yylex
-
-    #define yyrestart quickstep_yyrestart
-
-    #define yylex_init quickstep_yylex_init
-
-    #define yylex_init_extra quickstep_yylex_init_extra
-
-    #define yylex_destroy quickstep_yylex_destroy
-
-    #define yyget_debug quickstep_yyget_debug
-
-    #define yyset_debug quickstep_yyset_debug
-
-    #define yyget_extra quickstep_yyget_extra
-
-    #define yyset_extra quickstep_yyset_extra
-
-    #define yyget_in quickstep_yyget_in
-
-    #define yyset_in quickstep_yyset_in
-
-    #define yyget_out quickstep_yyget_out
-
-    #define yyset_out quickstep_yyset_out
-
-    #define yyget_leng quickstep_yyget_leng
-
-    #define yyget_text quickstep_yyget_text
-
-    #define yyget_lineno quickstep_yyget_lineno
-
-    #define yyset_lineno quickstep_yyset_lineno
-
-        #define yyget_column quickstep_yyget_column
-
-        #define yyset_column quickstep_yyset_column
-
-    #define yywrap quickstep_yywrap
-
-    #define yyget_lval quickstep_yyget_lval
-
-    #define yyset_lval quickstep_yyset_lval
-
-    #define yyget_lloc quickstep_yyget_lloc
-
-    #define yyset_lloc quickstep_yyset_lloc
-
-    #define yyalloc quickstep_yyalloc
-
-    #define yyrealloc quickstep_yyrealloc
-
-    #define yyfree quickstep_yyfree
-
 /* First, we deal with  platform-specific or compiler-specific issues. */
 
 /* begin standard C headers. */
@@ -166,22 +88,36 @@
 
 #endif /* ! FLEXINT_H */
 
-/* TODO: this is always defined, so inline it */
-#define yyconst const
+#ifdef __cplusplus
 
-#if defined(__GNUC__) && __GNUC__ >= 3
-#define yynoreturn __attribute__((__noreturn__))
+/* The "const" storage-class-modifier is valid. */
+#define YY_USE_CONST
+
+#else	/* ! __cplusplus */
+
+/* C99 requires __STDC__ to be defined as 1. */
+#if defined (__STDC__)
+
+#define YY_USE_CONST
+
+#endif	/* defined (__STDC__) */
+#endif	/* ! __cplusplus */
+
+#ifdef YY_USE_CONST
+#define yyconst const
 #else
-#define yynoreturn
+#define yyconst
 #endif
 
 /* Returned upon end-of-file. */
 #define YY_NULL 0
 
-/* Promotes a possibly negative, possibly signed char to an
- *   integer in range [0..255] for use as an array index.
+/* Promotes a possibly negative, possibly signed char to an unsigned
+ * integer for use as an array index.  If the signed char is negative,
+ * we want to instead treat it as an 8-bit unsigned char, hence the
+ * double cast.
  */
-#define YY_SC_TO_UI(c) ((YY_CHAR) (c))
+#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
 
 /* An opaque pointer. */
 #ifndef YY_TYPEDEF_YY_SCANNER_T
@@ -205,16 +141,20 @@
  * definition of BEGIN.
  */
 #define BEGIN yyg->yy_start = 1 + 2 *
+
 /* Translate the current start state into a value that can be later handed
  * to BEGIN to return to the state.  The YYSTATE alias is for lex
  * compatibility.
  */
 #define YY_START ((yyg->yy_start - 1) / 2)
 #define YYSTATE YY_START
+
 /* Action number for EOF rule of a given start state. */
 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
+
 /* Special action meaning "start processing a new file". */
 #define YY_NEW_FILE quickstep_yyrestart(yyin ,yyscanner )
+
 #define YY_END_OF_BUFFER_CHAR 0
 
 /* Size of default input buffer. */
@@ -247,10 +187,10 @@
 #define EOB_ACT_CONTINUE_SCAN 0
 #define EOB_ACT_END_OF_FILE 1
 #define EOB_ACT_LAST_MATCH 2
-    
+
     /* Note: We specifically omit the test for yy_rule_can_match_eol because it requires
      *       access to the local variable yy_act. Since yyless() is a macro, it would break
-     *       existing scanners that call yyless() from OUTSIDE quickstep_yylex.
+     *       existing scanners that call yyless() from OUTSIDE quickstep_yylex. 
      *       One obvious solution it to make yy_act a global. I tried that, and saw
      *       a 5% performance hit in a non-yylineno scanner, because yy_act is
      *       normally declared as a register variable-- so it is not worth it.
@@ -283,6 +223,7 @@
 		YY_DO_BEFORE_ACTION; /* set up yytext again */ \
 		} \
 	while ( 0 )
+
 #define unput(c) yyunput( c, yyg->yytext_ptr , yyscanner )
 
 #ifndef YY_STRUCT_YY_BUFFER_STATE
@@ -297,12 +238,12 @@
 	/* Size of input buffer in bytes, not including room for EOB
 	 * characters.
 	 */
-	int yy_buf_size;
+	yy_size_t yy_buf_size;
 
 	/* Number of characters read into yy_ch_buf, not including EOB
 	 * characters.
 	 */
-	int yy_n_chars;
+	yy_size_t yy_n_chars;
 
 	/* Whether we "own" the buffer - i.e., we know we created it,
 	 * and can realloc() it to grow it, and should free() it to
@@ -325,7 +266,7 @@
 
     int yy_bs_lineno; /**< The line count. */
     int yy_bs_column; /**< The column count. */
-
+    
 	/* Whether to try to fill the input buffer when we reach the
 	 * end of it.
 	 */
@@ -359,33 +300,36 @@
 #define YY_CURRENT_BUFFER ( yyg->yy_buffer_stack \
                           ? yyg->yy_buffer_stack[yyg->yy_buffer_stack_top] \
                           : NULL)
+
 /* Same as previous macro, but useful when we know that the buffer stack is not
  * NULL or when we need an lvalue. For internal use only.
  */
 #define YY_CURRENT_BUFFER_LVALUE yyg->yy_buffer_stack[yyg->yy_buffer_stack_top]
 
-void quickstep_yyrestart ( FILE *input_file , yyscan_t yyscanner );
-void quickstep_yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer , yyscan_t yyscanner );
-YY_BUFFER_STATE quickstep_yy_create_buffer ( FILE *file, int size , yyscan_t yyscanner );
-void quickstep_yy_delete_buffer ( YY_BUFFER_STATE b , yyscan_t yyscanner );
-void quickstep_yy_flush_buffer ( YY_BUFFER_STATE b , yyscan_t yyscanner );
-void quickstep_yypush_buffer_state ( YY_BUFFER_STATE new_buffer , yyscan_t yyscanner );
-void quickstep_yypop_buffer_state ( yyscan_t yyscanner );
+void quickstep_yyrestart (FILE *input_file ,yyscan_t yyscanner );
+void quickstep_yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner );
+YY_BUFFER_STATE quickstep_yy_create_buffer (FILE *file,int size ,yyscan_t yyscanner );
+void quickstep_yy_delete_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
+void quickstep_yy_flush_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
+void quickstep_yypush_buffer_state (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner );
+void quickstep_yypop_buffer_state (yyscan_t yyscanner );
 
-static void quickstep_yyensure_buffer_stack ( yyscan_t yyscanner );
-static void quickstep_yy_load_buffer_state ( yyscan_t yyscanner );
-static void quickstep_yy_init_buffer ( YY_BUFFER_STATE b, FILE *file , yyscan_t yyscanner );
+static void quickstep_yyensure_buffer_stack (yyscan_t yyscanner );
+static void quickstep_yy_load_buffer_state (yyscan_t yyscanner );
+static void quickstep_yy_init_buffer (YY_BUFFER_STATE b,FILE *file ,yyscan_t yyscanner );
+
 #define YY_FLUSH_BUFFER quickstep_yy_flush_buffer(YY_CURRENT_BUFFER ,yyscanner)
 
-YY_BUFFER_STATE quickstep_yy_scan_buffer ( char *base, yy_size_t size , yyscan_t yyscanner );
-YY_BUFFER_STATE quickstep_yy_scan_string ( const char *yy_str , yyscan_t yyscanner );
-YY_BUFFER_STATE quickstep_yy_scan_bytes ( const char *bytes, int len , yyscan_t yyscanner );
+YY_BUFFER_STATE quickstep_yy_scan_buffer (char *base,yy_size_t size ,yyscan_t yyscanner );
+YY_BUFFER_STATE quickstep_yy_scan_string (yyconst char *yy_str ,yyscan_t yyscanner );
+YY_BUFFER_STATE quickstep_yy_scan_bytes (yyconst char *bytes,yy_size_t len ,yyscan_t yyscanner );
 
-void *quickstep_yyalloc ( yy_size_t , yyscan_t yyscanner );
-void *quickstep_yyrealloc ( void *, yy_size_t , yyscan_t yyscanner );
-void quickstep_yyfree ( void * , yyscan_t yyscanner );
+void *quickstep_yyalloc (yy_size_t ,yyscan_t yyscanner );
+void *quickstep_yyrealloc (void *,yy_size_t ,yyscan_t yyscanner );
+void quickstep_yyfree (void * ,yyscan_t yyscanner );
 
 #define yy_new_buffer quickstep_yy_create_buffer
+
 #define yy_set_interactive(is_interactive) \
 	{ \
 	if ( ! YY_CURRENT_BUFFER ){ \
@@ -395,6 +339,7 @@
 	} \
 	YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
 	}
+
 #define yy_set_bol(at_bol) \
 	{ \
 	if ( ! YY_CURRENT_BUFFER ){\
@@ -404,34 +349,40 @@
 	} \
 	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
 	}
+
 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
 
 /* Begin user sect3 */
 
 #define quickstep_yywrap(yyscanner) (/*CONSTCOND*/1)
 #define YY_SKIP_YYWRAP
-typedef flex_uint8_t YY_CHAR;
+
+typedef unsigned char YY_CHAR;
 
 typedef int yy_state_type;
 
 #define yytext_ptr yytext_r
 
-static yy_state_type yy_get_previous_state ( yyscan_t yyscanner );
-static yy_state_type yy_try_NUL_trans ( yy_state_type current_state  , yyscan_t yyscanner);
-static int yy_get_next_buffer ( yyscan_t yyscanner );
-static void yynoreturn yy_fatal_error ( const char* msg , yyscan_t yyscanner );
+static yy_state_type yy_get_previous_state (yyscan_t yyscanner );
+static yy_state_type yy_try_NUL_trans (yy_state_type current_state  ,yyscan_t yyscanner);
+static int yy_get_next_buffer (yyscan_t yyscanner );
+#if defined(__GNUC__) && __GNUC__ >= 3
+__attribute__((__noreturn__))
+#endif
+static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner );
 
 /* Done after the current pattern has been matched and before the
  * corresponding action - sets up yytext.
  */
 #define YY_DO_BEFORE_ACTION \
 	yyg->yytext_ptr = yy_bp; \
-	yyleng = (int) (yy_cp - yy_bp); \
+	yyleng = (size_t) (yy_cp - yy_bp); \
 	yyg->yy_hold_char = *yy_cp; \
 	*yy_cp = '\0'; \
 	yyg->yy_c_buf_p = yy_cp;
-#define YY_NUM_RULES 161
-#define YY_END_OF_BUFFER 162
+
+#define YY_NUM_RULES 163
+#define YY_END_OF_BUFFER 164
 /* This struct is not used in this scanner,
    but its presence is necessary. */
 struct yy_trans_info
@@ -439,77 +390,77 @@
 	flex_int32_t yy_verify;
 	flex_int32_t yy_nxt;
 	};
-static const flex_int16_t yy_accept[593] =
+static yyconst flex_int16_t yy_accept[599] =
     {   0,
         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        0,    0,  162,    2,    2,  160,  160,  159,  158,  160,
-      137,  133,  136,  133,  133,  156,  129,  126,  130,  155,
-      155,  155,  155,  155,  155,  155,  155,  155,  155,  155,
-      155,  155,  155,  155,  155,  155,  155,  155,  155,  155,
-      155,  155,  155,  155,  134,    4,    5,    5,    3,  152,
-      152,  149,  153,  153,  147,  154,  154,  151,    1,  159,
-      127,  157,  156,  156,  156,    0,  131,  128,  132,  155,
-      155,  155,  155,   10,  155,  155,  155,   22,  155,  155,
-      155,  155,  155,  155,  155,  155,  155,  155,  155,  135,
+        0,    0,  164,    2,    2,  162,  162,  161,  160,  162,
+      139,  135,  138,  135,  135,  158,  131,  128,  132,  157,
+      157,  157,  157,  157,  157,  157,  157,  157,  157,  157,
+      157,  157,  157,  157,  157,  157,  157,  157,  157,  157,
+      157,  157,  157,  157,  136,    4,    5,    5,    3,  154,
+      154,  151,  155,  155,  149,  156,  156,  153,    1,  161,
+      129,  159,  158,  158,  158,    0,  133,  130,  134,  157,
+      157,  157,  157,   10,  157,  157,  157,   22,  157,  157,
+      157,  157,  157,  157,  157,  157,  157,  157,  157,  137,
 
-      155,  155,  155,  155,  155,  155,  155,  155,  155,  155,
-      155,  155,  155,   60,   68,  155,  155,  155,  155,  155,
-      155,  155,  155,  155,  155,  155,   82,   83,  155,  155,
-      155,  155,  155,  155,  155,  155,  155,  155,  155,  155,
-      155,  155,  155,  155,  155,  155,  155,  155,  155,  155,
-      155,  155,  155,    4,    5,    3,  152,  148,  153,  146,
-      146,  138,  140,  141,  142,  143,  144,  145,  146,  154,
-      150,  157,  156,    0,  156,    6,    7,  155,    9,   11,
-      155,  155,   15,  155,  155,  155,  155,  155,  155,  155,
-      155,  155,  155,  155,   33,  155,  155,  155,  155,  155,
+      157,  157,  157,  157,  157,  157,  157,  157,  157,  157,
+      157,  157,  157,   60,   69,  157,  157,  157,  157,  157,
+      157,  157,  157,  157,  157,  157,   83,   84,  157,  157,
+      157,  157,  157,  157,  157,  157,  157,  157,  157,  157,
+      157,  157,  157,  157,  157,  157,  157,  157,  157,  157,
+      157,  157,  157,    4,    5,    3,  154,  150,  155,  148,
+      148,  140,  142,  143,  144,  145,  146,  147,  148,  156,
+      152,  159,  158,    0,  158,    6,    7,  157,    9,   11,
+      157,  157,   15,  157,  157,  157,  157,  157,  157,  157,
+      157,  157,  157,  157,   33,  157,  157,  157,  157,  157,
 
-      155,  155,  155,   44,  155,  155,  155,  155,  155,  155,
-      155,   52,  155,  155,  155,  155,  155,  155,  155,  155,
-      155,   64,  155,   70,  155,  155,  155,  155,  155,  155,
-      155,   78,  155,   81,  155,  155,  155,  155,  155,  155,
-      155,  155,  155,  155,  155,  155,  155,   99,  155,  155,
-      104,  105,  155,  155,  155,  155,  155,  155,  155,  155,
-      155,  155,  155,  155,  155,  155,  155,  155,  138,  140,
-      139,  155,  155,  155,  155,  155,  155,  155,   20,   23,
-      155,  155,  155,   28,  155,  155,  155,   31,  155,  155,
-      155,  155,   38,  155,  155,   42,   43,  155,  155,  155,
+      157,  157,  157,   44,  157,  157,  157,  157,  157,  157,
+      157,   52,  157,  157,  157,  157,  157,  157,  157,  157,
+      157,   64,  157,   71,  157,  157,  157,  157,  157,  157,
+      157,   79,  157,   82,  157,  157,  157,  157,  157,  157,
+      157,  157,  157,  157,  157,  157,  157,  100,  157,  157,
+      105,  106,  157,  157,  157,  157,  157,  157,  157,  157,
+      157,  157,  157,  157,  157,  157,  157,  157,  140,  142,
+      141,  157,  157,  157,  157,  157,  157,  157,   20,   23,
+      157,  157,  157,   28,  157,  157,  157,   31,  157,  157,
+      157,  157,   38,  157,  157,   42,   43,  157,  157,  157,
 
-      155,  155,  155,  155,  155,   54,   55,  155,   57,  155,
-       59,  155,  155,  155,  155,   67,   69,   71,   72,   73,
-      155,   75,  155,  155,   79,  155,  155,   86,  155,  155,
-      155,  155,  155,   93,  155,   95,  155,  155,  155,  101,
-      155,  155,  155,  155,  155,  155,  109,  110,  112,  155,
-      155,  155,  155,  155,  155,  155,  120,  155,  155,  123,
-      124,  138,  139,    8,  155,  155,  155,  155,  155,  155,
-      155,   25,  155,  155,  155,  155,  155,  155,  155,  155,
-      155,  155,  155,  155,  155,  155,  155,  155,   48,   49,
-       50,  155,  155,   56,  155,   61,   62,  155,  155,  155,
+      157,  157,  157,  157,  157,   54,   55,  157,   57,  157,
+       59,  157,  157,  157,  157,   68,   70,   72,   73,   74,
+      157,   76,  157,  157,   80,  157,  157,   87,  157,  157,
+      157,  157,  157,   94,  157,   96,  157,  157,  157,  102,
+      157,  157,  157,  157,  157,  157,  110,  111,  113,  157,
+      157,  157,  157,  157,  157,  157,  157,  122,  157,  157,
+      125,  126,  140,  141,    8,  157,  157,  157,  157,  157,
+      157,  157,   25,  157,  157,  157,  157,  157,  157,  157,
+      157,  157,  157,  157,  157,  157,  157,  157,  157,   48,
+       49,   50,  157,  157,   56,  157,   61,   62,  157,  157,
 
-       74,  155,   77,   80,   84,   85,  155,  155,  155,  155,
-      155,   94,  155,  155,   98,  155,  155,  155,  155,  155,
-      108,  155,  155,  155,  155,  155,  117,  155,  155,  121,
-      155,  155,  155,  155,   14,  155,  155,  155,  155,  155,
-       26,  155,   29,  155,  155,  155,  155,  155,   36,  155,
-      155,  155,   41,  155,   46,  155,  155,  155,   58,   63,
-      155,  155,   76,  155,  155,  155,  155,  155,  155,   97,
-      155,  102,  103,  155,  155,  155,  155,  155,  115,  116,
-      118,  155,  122,  155,  155,   13,  155,  155,  155,  155,
-      155,  155,   21,   30,  155,   34,   35,  155,  155,  155,
+      157,   75,  157,   78,   81,   85,   86,  157,  157,  157,
+      157,  157,   95,  157,  157,   99,  157,  157,  157,  157,
+      157,  109,  157,  157,  157,  116,  157,  157,  119,  157,
+      157,  123,  157,  157,  157,  157,   14,  157,  157,  157,
+      157,  157,   26,  157,   29,  157,  157,  157,  157,  157,
+       36,  157,  157,  157,   41,  157,   46,  157,  157,  157,
+       58,   63,  157,  157,  157,   77,  157,  157,  157,  157,
+      157,  157,   98,  157,  103,  104,  157,  157,  157,  157,
+      157,  117,  118,  120,  157,  124,  157,  157,   13,  157,
+      157,  157,  157,  157,  157,   21,   30,  157,   34,   35,
 
-      155,   47,  155,   53,   65,  155,  155,   89,  155,   91,
-      155,  155,  155,  155,  155,  155,  155,  155,  119,  155,
-      155,  155,  155,  155,  155,  155,  155,   32,  155,  155,
-       40,  155,  155,   66,  155,  155,   92,  155,  155,  106,
-      155,  155,  155,  155,  155,   12,  155,  155,  155,  155,
-       24,  155,   37,  155,  155,   51,   87,   90,  155,  155,
-      107,  111,  155,  114,  125,   16,  155,  155,  155,   27,
-       39,  155,   88,   96,  155,  155,  155,   18,   19,  155,
-      155,  113,  155,  155,  155,  155,  155,  100,  155,   45,
-       17,    0
+      157,  157,  157,  157,   47,  157,   53,   65,  157,  157,
+      157,   90,  157,   92,  157,  157,  157,  157,  157,  157,
+      157,  157,  121,  157,  157,  157,  157,  157,  157,  157,
+      157,   32,  157,  157,   40,  157,  157,  157,   67,  157,
+      157,   93,  157,  157,  107,  157,  157,  157,  157,  157,
+       12,  157,  157,  157,  157,   24,  157,   37,  157,  157,
+       51,   66,   88,   91,  157,  157,  108,  112,  157,  115,
+      127,   16,  157,  157,  157,   27,   39,  157,   89,   97,
+      157,  157,  157,   18,   19,  157,  157,  114,  157,  157,
+      157,  157,  157,  101,  157,   45,   17,    0
 
     } ;
 
-static const YY_CHAR yy_ec[256] =
+static yyconst YY_CHAR yy_ec[256] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
         1,    1,    4,    1,    1,    1,    1,    1,    1,    1,
@@ -541,7 +492,7 @@
         1,    1,    1,    1,    1
     } ;
 
-static const YY_CHAR yy_meta[72] =
+static yyconst YY_CHAR yy_meta[72] =
     {   0,
         1,    1,    2,    1,    1,    3,    1,    4,    1,    5,
         5,    6,    6,    5,    1,    1,    1,    7,    7,    7,
@@ -553,27 +504,27 @@
         8
     } ;
 
-static const flex_int16_t yy_base[608] =
+static yyconst flex_uint16_t yy_base[614] =
     {   0,
         0,    1,   46,    0,  117,  163,    2,    3,  128,  132,
-        6,   10,  211, 1312, 1312,    0, 1312,   13, 1312,  194,
-     1312, 1312, 1312,  194,    6,  130,    4, 1312,  170,  124,
+        6,   10,  211, 1319, 1319,    0, 1319,   13, 1319,  194,
+     1319, 1319, 1319,  194,    6,  130,    4, 1319,  170,  124,
       161,  215,  170,  207,  265,   92,  167,  162,   96,  107,
       223,  165,  162,  221,  274,   92,  284,  277,  315,  206,
-      128,  232,    0,  125, 1312,  152,    4,   19,    0,    0,
+      128,  232,    0,  125, 1319,  152,    4,   19,    0,    0,
         0,  143,    0,    0,  379,    0,    0,  144,    0,   22,
-     1312,    0,  292,  305,  335,   18, 1312, 1312, 1312,    0,
+     1319,    0,  292,  305,  335,   18, 1319, 1319, 1319,    0,
       174,  264,  180,  186,  209,  271,  229,    0,  277,  333,
-      335,  312,  330,  317,  323,  338,  323,  333,  340, 1312,
+      335,  312,  330,  317,  323,  338,  323,  333,  340, 1319,
 
       339,  355,  357,  381,  370,  373,  377,  382,  380,  384,
       383,  383,  383,  431,    0,  398,  383,  390,  406,  402,
       403,  404,  425,  420,  431,  442,    0,  445,  432,  448,
       436,  437,  451,  448,  444,  460,  452,  439,  489,  464,
       468,  469,  468,  462,  455,  477,  501,  493,  489,  494,
-      502,  494,  510,  142,   29,    0,    0, 1312,    0, 1312,
-     1312,   22,   24, 1312, 1312, 1312, 1312, 1312,    0,    0,
-     1312,    0,  520,   26,   28,    0,    0,  508,    0,  512,
+      502,  494,  510,  142,   29,    0,    0, 1319,    0, 1319,
+     1319,   22,   24, 1319, 1319, 1319, 1319, 1319,    0,    0,
+     1319,    0,  520,   26,   28,    0,    0,  508,    0,  512,
       495,  510,  497,  530,  518,  506,  525,  508,  512,  509,
       543,  530,  533,  550,    0,  547,  558,  556,  561,  546,
 
@@ -582,126 +533,128 @@
       598,  604,  594,    0,  593,  594,  612,  613,  616,  603,
       605,    0,  614,    0,  622,  623,  611,  610,  630,  631,
       626,  615,  629,  628,  639,  640,  639,  631,  634,  656,
-        0,  654,  648,  659,  658,  670,  672,  668,  666,  665,
-      682,  670,  664,  683,  673,  684,  681,  674,   30,  125,
-        0,  675,  680,  692,  684,  694,  691,  690,    0,  704,
-      696,  695,  699,    0,  704,  707,  724,  710,  720,  714,
-      718,  726,  735,  732,  730,    0,    0,  727,  724,  744,
+        0,  654,  648,  659,  658,  670,  672,  668,  666,  667,
+      682,  671,  665,  684,  674,  685,  683,  675,   30,  125,
+        0,  676,  683,  693,  685,  697,  692,  692,    0,  706,
+      697,  706,  704,    0,  705,  711,  725,  713,  722,  717,
+      719,  727,  736,  733,  731,    0,    0,  728,  725,  745,
 
-      741,  727,  729,  735,  742,    0,    0,  736,    0,  741,
-        0,  732,  739,  742,  759,    0,    0,    0,    0,    0,
-      741,    0,  743,  757,  763,  765,  769,    0,  779,  786,
-      788,  795,  779,    0,  793,    0,  781,  776,  781,    0,
-      798,  789,  801,  793,  787,  803,    0,  790,    0,  805,
-      792,  793,  795,  811,  814,  813,    0,  818,  809,    0,
-      822,  136, 1312,    0,  836,  836,  825,  845,  835,  843,
-      852,    0,  842,  839,  853,  854,  846,  852,  861,  851,
-      860,  857,  853,  854,  866,  867,  854,  873,    0,    0,
-        0,  854,  872,    0,  874,    0,    0,  862,  888,  876,
+      742,  729,  730,  736,  743,    0,    0,  739,    0,  742,
+        0,  733,  742,  743,  759,    0,    0,    0,    0,    0,
+      743,    0,  745,  774,  764,  769,  770,    0,  782,  788,
+      791,  796,  780,    0,  794,    0,  782,  777,  782,    0,
+      799,  790,  802,  795,  788,  804,    0,  791,    0,  808,
+      793,  801,  797,  799,  814,  818,  816,    0,  830,  825,
+        0,  828,  136, 1319,    0,  841,  841,  829,  850,  838,
+      849,  853,    0,  844,  841,  855,  856,  848,  854,  864,
+      854,  862,  859,  857,  858,  868,  871,  858,  876,    0,
+        0,    0,  858,  875,    0,  886,    0,    0,  878,  894,
 
-        0,  894,    0,    0,    0,    0,  883,  890,  903,  891,
-      903,    0,  908,  898,    0,  910,  912,  897,  909,  901,
-        0,  900,  902,  909,  919,  920,    0,  907,  928,    0,
-      907,  916,  925,  921,    0,  915,  921,  939,  942,  936,
-        0,  956,    0,  956,  942,  952,  955,  950,    0,  951,
-      968,  970,    0,   93,    0,  954,  966,  962,    0,    0,
-      959,  977,    0,  970,  961,  973,  958,  964,  973,    0,
-      976,    0,    0,  975,  983,  992,  994,  993,    0,    0,
-        0,  980,    0,  995, 1000,    0, 1006, 1004, 1007, 1011,
-     1020, 1019,    0,    0, 1024,    0,    0, 1025, 1022, 1012,
+      885,    0,  898,    0,    0,    0,    0,  889,  898,  909,
+      896,  906,    0,  911,  901,    0,  913,  915,  900,  912,
+      905,    0,  904,  906,  912,    0,  924,  925,    0,  912,
+      933,    0,  912,  922,  930,  926,    0,  929,  938,  956,
+      952,  942,    0,  964,    0,  962,  950,  958,  960,  953,
+        0,  954,  971,  973,    0,   93,    0,  957,  969,  965,
+        0,    0,  963,  977,  982,    0,  975,  967,  979,  964,
+      972,  979,    0,  983,    0,    0,  983,  989, 1008, 1013,
+     1011,    0,    0,    0, 1001,    0, 1006, 1009,    0, 1016,
+     1013, 1016, 1018, 1026, 1023,    0,    0, 1028,    0,    0,
 
-     1014,    0, 1020,    0,    0, 1023, 1021,    0, 1023,    0,
-     1014, 1037, 1032, 1022, 1031, 1033, 1034, 1045,    0, 1031,
-     1046, 1041, 1040, 1051, 1052, 1055, 1063,    0, 1060, 1067,
-        0, 1063, 1079,    0, 1073, 1081,    0, 1084, 1077,    0,
-     1084, 1076, 1077, 1090, 1087,    0, 1090, 1093, 1087, 1095,
-        0, 1083,    0, 1097, 1087,    0, 1089,    0, 1090, 1102,
-        0,    0, 1101,    0,    0,    0, 1096, 1120, 1112,    0,
-        0, 1122,    0,    0, 1115, 1131, 1119,    0,    0, 1127,
-     1139,    0, 1136, 1139, 1129, 1143, 1130,    0, 1131,    0,
-        0, 1312, 1196, 1206, 1216, 1226, 1236, 1240, 1243, 1249,
+     1029, 1026, 1016, 1018,    0, 1025,    0,    0, 1037, 1029,
+     1027,    0, 1031,    0, 1021, 1044, 1041, 1031, 1039, 1042,
+     1043, 1062,    0, 1052, 1066, 1063, 1062, 1065, 1063, 1068,
+     1073,    0, 1070, 1075,    0, 1070, 1084, 1072,    0, 1079,
+     1087,    0, 1090, 1084,    0, 1091, 1083, 1084, 1099, 1096,
+        0, 1098, 1103, 1097, 1106,    0, 1093,    0, 1107, 1107,
+        0,    0, 1111,    0, 1112, 1126,    0,    0, 1124,    0,
+        0,    0, 1121, 1136, 1126,    0,    0, 1136,    0,    0,
+     1126, 1142, 1128,    0,    0, 1135, 1145,    0, 1142, 1145,
+     1135, 1150, 1137,    0, 1138,    0,    0, 1319, 1203, 1213,
 
-     1257, 1267, 1277, 1287, 1297, 1302, 1304
+     1223, 1233, 1243, 1247, 1250, 1256, 1264, 1274, 1284, 1294,
+     1304, 1309, 1311
     } ;
 
-static const flex_int16_t yy_def[608] =
+static yyconst flex_int16_t yy_def[614] =
     {   0,
-      593,  593,  592,    3,  594,  594,  595,  595,  596,  596,
-      597,  597,  592,  592,  592,  598,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  592,  592,  592,  592,  600,  601,
-      601,  592,  602,  602,  603,  604,  604,  592,  598,  592,
-      592,  605,  592,  592,  592,  592,  592,  592,  592,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  592,
+      599,  599,  598,    3,  600,  600,  601,  601,  602,  602,
+      603,  603,  598,  598,  598,  604,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  598,  598,  598,  598,  606,  607,
+      607,  598,  608,  608,  609,  610,  610,  598,  604,  598,
+      598,  611,  598,  598,  598,  598,  598,  598,  598,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  598,
 
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  592,  592,  600,  601,  592,  602,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  606,  604,
-      592,  605,  592,  592,  592,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  598,  598,  606,  607,  598,  608,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  612,  610,
+      598,  611,  598,  598,  598,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
 
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  592,  592,
-      607,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  598,  598,
+      613,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
 
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  592,  592,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  598,  598,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
 
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
 
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,  599,  599,  599,  599,  599,  599,  599,  599,  599,
-      599,    0,  592,  592,  592,  592,  592,  592,  592,  592,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
+      605,  605,  605,  605,  605,  605,  605,    0,  598,  598,
 
-      592,  592,  592,  592,  592,  592,  592
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598
     } ;
 
-static const flex_int16_t yy_nxt[1384] =
+static yyconst flex_uint16_t yy_nxt[1391] =
     {   0,
-      592,  592,   15,   15,   61,   61,  155,  155,   67,   62,
-       62,   68,   67,  592,   70,   68,   70,   73,   73,   77,
-       78,  155,  155,   70,  592,   70,  174,  174,  592,  175,
+      598,  598,   15,   15,   61,   61,  155,  155,   67,   62,
+       62,   68,   67,  598,   70,   68,   70,   73,   73,   77,
+       78,  155,  155,   70,  598,   70,  174,  174,  598,  175,
       175,  155,  155,  269,  270,  270,  270,  175,  175,  175,
-      175,  362,  270,  592,   16,   16,   17,   18,   19,   18,
+      175,  363,  270,  598,   16,   16,   17,   18,   19,   18,
        20,   21,   22,   23,   22,   24,   25,   26,   26,   17,
        27,   28,   29,   30,   31,   32,   33,   34,   35,   36,
        37,   38,   39,   40,   41,   42,   43,   44,   45,   46,
@@ -711,7 +664,7 @@
        38,   39,   40,   41,   42,   43,   44,   45,   46,   47,
        48,   49,   50,   51,   52,   53,   54,   17,   56,   57,
        58,   17,   17,   17,   17,   17,  111,  116,  117,  134,
-       64,   17,   17,   17,   64,   62,  270,  270,  501,   62,
+       64,   17,   17,   17,   64,   62,  270,  270,  504,   62,
        74,   75,   75,  154,   81,  150,  153,  270,  270,  171,
       158,   76,   82,  154,   83,  111,  116,  117,  134,   84,
        17,   17,   17,   17,   56,   57,   58,   17,   17,   17,
@@ -720,35 +673,35 @@
       122,   96,  114,  124,  176,   97,  123,  115,  113,  125,
 
       179,   98,   88,   72,   99,  180,   17,   17,   17,   71,
-      592,   85,  592,  112,  100,   86,   95,  592,   87,  122,
+      598,   85,  598,  112,  100,   86,   95,  598,   87,  122,
        96,  114,  124,  176,   97,  123,  115,  113,  125,  179,
        98,   88,   89,   99,  180,  101,  147,  102,  148,   90,
       118,  149,  103,  126,  119,  181,   91,  104,  120,   92,
-       93,  127,   94,  592,  121,  128,  151,  152,  129,  130,
-      184,   89,  592,  592,  101,  147,  102,  148,   90,  118,
+       93,  127,   94,  598,  121,  128,  151,  152,  129,  130,
+      184,   89,  598,  598,  101,  147,  102,  148,   90,  118,
       149,  103,  126,  119,  181,   91,  104,  120,   92,   93,
       127,   94,  105,  121,  128,  151,  152,  129,  130,  184,
-      106,  131,  177,  107,  182,  132,  108,  592,  139,  109,
+      106,  131,  177,  107,  182,  132,  108,  598,  139,  109,
 
       178,  135,  110,   73,   73,  136,  140,  183,  133,  137,
-      592,  105,  185,   76,  141,  138,  173,  173,  592,  106,
+      598,  105,  185,   76,  141,  138,  173,  173,  598,  106,
       131,  177,  107,  182,  132,  108,   76,  139,  109,  178,
       135,  110,  142,  191,  136,  140,  183,  133,  137,  143,
       144,  185,   76,  141,  138,   74,   75,   75,  192,  145,
-      186,  193,  146,  592,  187,   76,   76,  196,  200,  194,
+      186,  193,  146,  598,  187,   76,   76,  196,  200,  194,
       197,  142,  191,  188,  195,  189,  198,  190,  143,  144,
-      201,  202,  592,  199,  203,  204,  205,  192,  145,  186,
-      193,  146,  161,  187,  592,   76,  196,  200,  194,  197,
+      201,  202,  598,  199,  203,  204,  205,  192,  145,  186,
+      193,  146,  161,  187,  598,   76,  196,  200,  194,  197,
       162,  163,  188,  195,  189,  198,  190,  164,  208,  201,
 
       202,  165,  199,  203,  204,  205,  206,  209,  210,  166,
       211,  213,  214,  167,  215,  168,  212,  207,  216,  169,
-      218,  217,  592,  223,  224,  225,  164,  208,  226,  227,
-      165,  228,  592,  229,  230,  206,  209,  210,  166,  211,
+      218,  217,  598,  223,  224,  225,  164,  208,  226,  227,
+      165,  228,  598,  229,  230,  206,  209,  210,  166,  211,
       213,  214,  167,  215,  168,  212,  207,  216,  169,  218,
       217,  219,  223,  224,  225,  231,  232,  226,  227,  233,
       228,  220,  229,  230,  234,  235,  221,  222,  236,  237,
-      238,  239,  240,  242,  243,  247,  241,  244,  248,  592,
+      238,  239,  240,  242,  243,  247,  241,  244,  248,  598,
       219,  252,  245,  246,  231,  232,  253,  254,  233,  255,
       220,  256,  257,  234,  235,  221,  222,  236,  237,  238,
 
@@ -772,44 +725,44 @@
       337,  338,  320,  339,  316,  342,  340,  321,  322,  323,
       324,  325,  326,  327,  328,  329,  341,  343,  330,  331,
       334,  335,  344,  345,  332,  336,  333,  346,  347,  337,
-      338,  348,  339,  349,  342,  340,  350,  351,  352,  353,
+      338,  348,  339,  349,  342,  340,  350,  351,  352,  354,
 
-      354,  355,  356,  357,  359,  360,  343,  358,  361,  364,
+      353,  355,  356,  357,  358,  360,  343,  361,  359,  362,
       365,  344,  345,  366,  367,  368,  346,  347,  369,  370,
-      348,  371,  349,  372,  373,  350,  351,  352,  353,  354,
-      355,  356,  357,  359,  360,  374,  358,  361,  364,  365,
+      348,  371,  349,  372,  373,  350,  351,  352,  354,  353,
+      355,  356,  357,  358,  360,  374,  361,  359,  362,  365,
       375,  376,  366,  367,  368,  377,  378,  369,  370,  379,
       371,  380,  372,  373,  381,  382,  383,  384,  385,  386,
       387,  388,  389,  390,  374,  391,  392,  393,  394,  375,
-      376,  395,  396,  397,  377,  378,  398,  401,  379,  402,
-      380,  403,  399,  381,  382,  383,  384,  385,  386,  387,
-      388,  389,  390,  400,  391,  392,  393,  394,  404,  405,
+      376,  395,  396,  397,  377,  378,  398,  399,  379,  402,
+      380,  403,  400,  381,  382,  383,  384,  385,  386,  387,
+      388,  389,  390,  401,  391,  392,  393,  394,  404,  405,
 
-      395,  396,  397,  406,  407,  398,  401,  408,  402,  409,
-      403,  399,  410,  411,  412,  413,  414,  415,  416,  417,
-      418,  419,  400,  420,  421,  422,  423,  404,  405,  424,
+      395,  396,  397,  406,  407,  398,  399,  408,  402,  409,
+      403,  400,  410,  411,  412,  413,  414,  415,  416,  417,
+      418,  419,  401,  420,  421,  422,  423,  404,  405,  424,
       425,  426,  406,  407,  427,  428,  408,  429,  409,  430,
       431,  410,  411,  412,  413,  414,  415,  416,  417,  418,
       419,  432,  420,  421,  422,  423,  433,  434,  424,  425,
-      426,  435,  436,  427,  428,  439,  429,  437,  430,  431,
-      438,  440,  441,  442,  443,  444,  445,  446,  447,  448,
+      426,  435,  436,  427,  428,  437,  429,  438,  430,  431,
+      439,  441,  442,  440,  443,  444,  445,  446,  447,  448,
       432,  449,  450,  451,  452,  433,  434,  453,  454,  455,
-      435,  436,  456,  457,  439,  458,  437,  459,  460,  438,
+      435,  436,  456,  457,  437,  458,  438,  459,  460,  439,
 
-      440,  441,  442,  443,  444,  445,  446,  447,  448,  461,
-      449,  450,  451,  452,  462,  463,  453,  454,  455,  464,
-      465,  456,  457,  466,  458,  467,  459,  460,  468,  469,
+      441,  442,  440,  443,  444,  445,  446,  447,  448,  461,
+      449,  450,  451,  452,  462,  463,  453,  454,  455,  466,
+      464,  456,  457,  465,  458,  467,  459,  460,  468,  469,
       470,  471,  472,  473,  474,  475,  476,  477,  461,  478,
-      479,  480,  481,  462,  463,  482,  483,  484,  464,  465,
-      485,  486,  466,  487,  467,  488,  489,  468,  469,  470,
+      479,  480,  481,  462,  463,  482,  483,  484,  466,  464,
+      485,  486,  465,  487,  467,  488,  489,  468,  469,  470,
       471,  472,  473,  474,  475,  476,  477,  490,  478,  479,
       480,  481,  491,  492,  482,  483,  484,  493,  494,  485,
       486,  495,  487,  496,  488,  489,  497,  498,  499,  500,
-      502,  503,  504,  505,  506,  507,  490,  508,  509,  510,
+      501,  502,  503,  505,  506,  507,  490,  508,  509,  510,
 
       511,  491,  492,  512,  513,  514,  493,  494,  515,  516,
-      495,  517,  496,  518,  519,  497,  498,  499,  500,  502,
-      503,  504,  505,  506,  507,  520,  508,  509,  510,  511,
+      495,  517,  496,  518,  519,  497,  498,  499,  500,  501,
+      502,  503,  505,  506,  507,  520,  508,  509,  510,  511,
       521,  522,  512,  513,  514,  523,  524,  515,  516,  525,
       517,  526,  518,  519,  527,  528,  529,  530,  531,  532,
       533,  534,  535,  536,  520,  537,  538,  539,  540,  521,
@@ -824,34 +777,34 @@
       577,  556,  557,  558,  559,  560,  561,  562,  563,  564,
       565,  578,  566,  567,  568,  569,  579,  580,  570,  571,
       572,  581,  582,  573,  574,  583,  575,  584,  576,  577,
-      585,  586,  587,  588,  589,  590,  591,  592,  592,  592,
-      578,  592,  592,  592,  592,  579,  580,  592,  592,  592,
-      581,  582,  592,  592,  583,  592,  584,  592,  592,  585,
-      586,  587,  588,  589,  590,  591,   14,   14,   14,   14,
+      585,  586,  587,  588,  589,  590,  591,  592,  593,  594,
+      578,  595,  596,  597,  598,  579,  580,  598,  598,  598,
+      581,  582,  598,  598,  583,  598,  584,  598,  598,  585,
+      586,  587,  588,  589,  590,  591,  592,  593,  594,  598,
 
-       14,   14,   14,   14,   14,   14,   59,   59,   59,   59,
-       59,   59,   59,   59,   59,   59,   60,   60,   60,   60,
-       60,   60,   60,   60,   60,   60,   63,   63,   63,   63,
-       63,   63,   63,   63,   63,   63,   66,   66,   66,   66,
-       66,   66,   66,   66,   66,   66,   69,   69,   80,   80,
-       80,  592,   80,  156,  156,  156,  156,  157,  157,  157,
-      592,  157,  157,  157,  157,  157,  157,  159,  159,  159,
-      592,  159,  159,  159,  159,  592,  159,  160,  160,  160,
-      160,  160,  160,  160,  160,  160,  160,  170,  170,  592,
-      170,  170,  170,  170,  170,  170,  170,  172,  592,  172,
+      595,  596,  597,   14,   14,   14,   14,   14,   14,   14,
+       14,   14,   14,   59,   59,   59,   59,   59,   59,   59,
+       59,   59,   59,   60,   60,   60,   60,   60,   60,   60,
+       60,   60,   60,   63,   63,   63,   63,   63,   63,   63,
+       63,   63,   63,   66,   66,   66,   66,   66,   66,   66,
+       66,   66,   66,   69,   69,   80,   80,   80,  598,   80,
+      156,  156,  156,  156,  157,  157,  157,  598,  157,  157,
+      157,  157,  157,  157,  159,  159,  159,  598,  159,  159,
+      159,  159,  598,  159,  160,  160,  160,  160,  160,  160,
+      160,  160,  160,  160,  170,  170,  598,  170,  170,  170,
 
-      172,  172,  172,  172,  172,  172,  172,  271,  271,  363,
-      363,   13,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592
+      170,  170,  170,  170,  172,  598,  172,  172,  172,  172,
+      172,  172,  172,  172,  271,  271,  364,  364,   13,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598
     } ;
 
-static const flex_int16_t yy_chk[1384] =
+static yyconst flex_int16_t yy_chk[1391] =
     {   0,
         0,    0,    1,    2,    7,    8,   57,   57,   11,    7,
         8,   11,   12,    0,   18,   12,   18,   25,   25,   27,
@@ -867,8 +820,8 @@
         3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
         3,    3,    3,    3,    3,    3,    3,    5,    5,    5,
         5,    5,    5,    5,    5,    5,   36,   39,   40,   46,
-        9,    5,    5,    5,   10,    9,  270,  270,  454,   10,
-       26,   26,   26,  154,   30,   51,   54,  362,  362,   68,
+        9,    5,    5,    5,   10,    9,  270,  270,  456,   10,
+       26,   26,   26,  154,   30,   51,   54,  363,  363,   68,
        62,   26,   30,   56,   30,   36,   39,   40,   46,   30,
         5,    5,    5,    6,    6,    6,    6,    6,    6,    6,
         6,    6,    9,   30,   51,   54,   10,    6,    6,    6,
@@ -930,85 +883,85 @@
       242,  243,  252,  253,  241,  244,  241,  254,  255,  245,
       246,  256,  247,  257,  249,  248,  258,  259,  260,  261,
 
-      262,  263,  264,  265,  266,  267,  250,  265,  268,  272,
-      273,  252,  253,  274,  275,  276,  254,  255,  277,  278,
-      256,  280,  257,  281,  282,  258,  259,  260,  261,  262,
-      263,  264,  265,  266,  267,  283,  265,  268,  272,  273,
-      285,  286,  274,  275,  276,  287,  288,  277,  278,  289,
-      280,  290,  281,  282,  291,  292,  293,  294,  295,  298,
-      299,  300,  301,  302,  283,  303,  304,  305,  308,  285,
-      286,  310,  312,  313,  287,  288,  314,  321,  289,  323,
-      290,  324,  315,  291,  292,  293,  294,  295,  298,  299,
-      300,  301,  302,  315,  303,  304,  305,  308,  325,  326,
+      260,  262,  263,  264,  265,  266,  250,  267,  265,  268,
+      272,  252,  253,  273,  274,  275,  254,  255,  276,  277,
+      256,  278,  257,  280,  281,  258,  259,  260,  261,  260,
+      262,  263,  264,  265,  266,  282,  267,  265,  268,  272,
+      283,  285,  273,  274,  275,  286,  287,  276,  277,  288,
+      278,  289,  280,  281,  290,  291,  292,  293,  294,  295,
+      298,  299,  300,  301,  282,  302,  303,  304,  305,  283,
+      285,  308,  310,  312,  286,  287,  313,  314,  288,  321,
+      289,  323,  315,  290,  291,  292,  293,  294,  295,  298,
+      299,  300,  301,  315,  302,  303,  304,  305,  324,  325,
 
-      310,  312,  313,  327,  329,  314,  321,  330,  323,  331,
-      324,  315,  332,  333,  335,  337,  338,  339,  341,  342,
-      343,  344,  315,  345,  346,  348,  350,  325,  326,  351,
-      352,  353,  327,  329,  354,  355,  330,  356,  331,  358,
-      359,  332,  333,  335,  337,  338,  339,  341,  342,  343,
-      344,  361,  345,  346,  348,  350,  365,  366,  351,  352,
-      353,  367,  368,  354,  355,  370,  356,  369,  358,  359,
-      369,  371,  373,  374,  375,  376,  377,  378,  379,  380,
-      361,  381,  382,  383,  384,  365,  366,  385,  386,  387,
-      367,  368,  388,  392,  370,  393,  369,  395,  398,  369,
+      308,  310,  312,  326,  327,  313,  314,  329,  321,  330,
+      323,  315,  331,  332,  333,  335,  337,  338,  339,  341,
+      342,  343,  315,  344,  345,  346,  348,  324,  325,  350,
+      351,  352,  326,  327,  353,  354,  329,  355,  330,  356,
+      357,  331,  332,  333,  335,  337,  338,  339,  341,  342,
+      343,  359,  344,  345,  346,  348,  360,  362,  350,  351,
+      352,  366,  367,  353,  354,  368,  355,  369,  356,  357,
+      370,  371,  372,  370,  374,  375,  376,  377,  378,  379,
+      359,  380,  381,  382,  383,  360,  362,  384,  385,  386,
+      366,  367,  387,  388,  368,  389,  369,  393,  394,  370,
 
-      371,  373,  374,  375,  376,  377,  378,  379,  380,  399,
-      381,  382,  383,  384,  400,  402,  385,  386,  387,  407,
-      408,  388,  392,  409,  393,  410,  395,  398,  411,  413,
-      414,  416,  417,  418,  419,  420,  422,  423,  399,  424,
-      425,  426,  428,  400,  402,  429,  431,  432,  407,  408,
-      433,  434,  409,  436,  410,  437,  438,  411,  413,  414,
-      416,  417,  418,  419,  420,  422,  423,  439,  424,  425,
-      426,  428,  440,  442,  429,  431,  432,  444,  445,  433,
-      434,  446,  436,  447,  437,  438,  448,  450,  451,  452,
-      456,  457,  458,  461,  462,  464,  439,  465,  466,  467,
+      371,  372,  370,  374,  375,  376,  377,  378,  379,  396,
+      380,  381,  382,  383,  399,  400,  384,  385,  386,  403,
+      401,  387,  388,  401,  389,  408,  393,  394,  409,  410,
+      411,  412,  414,  415,  417,  418,  419,  420,  396,  421,
+      423,  424,  425,  399,  400,  427,  428,  430,  403,  401,
+      431,  433,  401,  434,  408,  435,  436,  409,  410,  411,
+      412,  414,  415,  417,  418,  419,  420,  438,  421,  423,
+      424,  425,  439,  440,  427,  428,  430,  441,  442,  431,
+      433,  444,  434,  446,  435,  436,  447,  448,  449,  450,
+      452,  453,  454,  458,  459,  460,  438,  463,  464,  465,
 
-      468,  440,  442,  469,  471,  474,  444,  445,  475,  476,
-      446,  477,  447,  478,  482,  448,  450,  451,  452,  456,
-      457,  458,  461,  462,  464,  484,  465,  466,  467,  468,
-      485,  487,  469,  471,  474,  488,  489,  475,  476,  490,
-      477,  491,  478,  482,  492,  495,  498,  499,  500,  501,
-      503,  506,  507,  509,  484,  511,  512,  513,  514,  485,
-      487,  515,  516,  517,  488,  489,  518,  520,  490,  521,
-      491,  522,  523,  492,  495,  498,  499,  500,  501,  503,
-      506,  507,  509,  524,  511,  512,  513,  514,  525,  526,
-      515,  516,  517,  527,  529,  518,  520,  530,  521,  532,
+      467,  439,  440,  468,  469,  470,  441,  442,  471,  472,
+      444,  474,  446,  477,  478,  447,  448,  449,  450,  452,
+      453,  454,  458,  459,  460,  479,  463,  464,  465,  467,
+      480,  481,  468,  469,  470,  485,  487,  471,  472,  488,
+      474,  490,  477,  478,  491,  492,  493,  494,  495,  498,
+      501,  502,  503,  504,  479,  506,  509,  510,  511,  480,
+      481,  513,  515,  516,  485,  487,  517,  518,  488,  519,
+      490,  520,  521,  491,  492,  493,  494,  495,  498,  501,
+      502,  503,  504,  522,  506,  509,  510,  511,  524,  525,
+      513,  515,  516,  526,  527,  517,  518,  528,  519,  529,
 
-      522,  523,  533,  535,  536,  538,  539,  541,  542,  543,
-      544,  545,  524,  547,  548,  549,  550,  525,  526,  552,
-      554,  555,  527,  529,  557,  559,  530,  560,  532,  563,
-      567,  533,  535,  536,  538,  539,  541,  542,  543,  544,
-      545,  568,  547,  548,  549,  550,  569,  572,  552,  554,
-      555,  575,  576,  557,  559,  577,  560,  580,  563,  567,
-      581,  583,  584,  585,  586,  587,  589,    0,    0,    0,
-      568,    0,    0,    0,    0,  569,  572,    0,    0,    0,
-      575,  576,    0,    0,  577,    0,  580,    0,    0,  581,
-      583,  584,  585,  586,  587,  589,  593,  593,  593,  593,
+      520,  521,  530,  531,  533,  534,  536,  537,  538,  540,
+      541,  543,  522,  544,  546,  547,  548,  524,  525,  549,
+      550,  552,  526,  527,  553,  554,  528,  555,  529,  557,
+      559,  530,  531,  533,  534,  536,  537,  538,  540,  541,
+      543,  560,  544,  546,  547,  548,  563,  565,  549,  550,
+      552,  566,  569,  553,  554,  573,  555,  574,  557,  559,
+      575,  578,  581,  582,  583,  586,  587,  589,  590,  591,
+      560,  592,  593,  595,    0,  563,  565,    0,    0,    0,
+      566,  569,    0,    0,  573,    0,  574,    0,    0,  575,
+      578,  581,  582,  583,  586,  587,  589,  590,  591,    0,
 
-      593,  593,  593,  593,  593,  593,  594,  594,  594,  594,
-      594,  594,  594,  594,  594,  594,  595,  595,  595,  595,
-      595,  595,  595,  595,  595,  595,  596,  596,  596,  596,
-      596,  596,  596,  596,  596,  596,  597,  597,  597,  597,
-      597,  597,  597,  597,  597,  597,  598,  598,  599,  599,
-      599,    0,  599,  600,  600,  600,  600,  601,  601,  601,
-        0,  601,  601,  601,  601,  601,  601,  602,  602,  602,
-        0,  602,  602,  602,  602,    0,  602,  603,  603,  603,
-      603,  603,  603,  603,  603,  603,  603,  604,  604,    0,
-      604,  604,  604,  604,  604,  604,  604,  605,    0,  605,
+      592,  593,  595,  599,  599,  599,  599,  599,  599,  599,
+      599,  599,  599,  600,  600,  600,  600,  600,  600,  600,
+      600,  600,  600,  601,  601,  601,  601,  601,  601,  601,
+      601,  601,  601,  602,  602,  602,  602,  602,  602,  602,
+      602,  602,  602,  603,  603,  603,  603,  603,  603,  603,
+      603,  603,  603,  604,  604,  605,  605,  605,    0,  605,
+      606,  606,  606,  606,  607,  607,  607,    0,  607,  607,
+      607,  607,  607,  607,  608,  608,  608,    0,  608,  608,
+      608,  608,    0,  608,  609,  609,  609,  609,  609,  609,
+      609,  609,  609,  609,  610,  610,    0,  610,  610,  610,
 
-      605,  605,  605,  605,  605,  605,  605,  606,  606,  607,
-      607,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592,  592,  592,  592,  592,  592,  592,  592,
-      592,  592,  592
+      610,  610,  610,  610,  611,    0,  611,  611,  611,  611,
+      611,  611,  611,  611,  612,  612,  613,  613,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598,
+      598,  598,  598,  598,  598,  598,  598,  598,  598,  598
     } ;
 
 /* Table of booleans, true if rule could match eol. */
-static const flex_int32_t yy_rule_can_match_eol[162] =
+static yyconst flex_int32_t yy_rule_can_match_eol[164] =
     {   0,
 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
@@ -1017,8 +970,8 @@
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
-    0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 
-    0, 0,     };
+    0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 
+    1, 0, 0, 0,     };
 
 /* The intent behind this definition is that it'll catch
  * any uses of REJECT which flex missed.
@@ -1093,6 +1046,7 @@
 class ParseSelectionItem;
 class ParseSelectionItemScalar;
 class ParseSelectionList;
+class ParseSetOperation;
 class ParseSimpleTableReference;
 class ParseSimpleWhenClause;
 class ParseStringKeyLiteralValues;
@@ -1104,7 +1058,7 @@
 class ParseStatementInsert;
 class ParseStatementInsertTuple;
 class ParseStatementInsertSelection;
-class ParseStatementSelect;
+class ParseStatementSetOperation;
 class ParseStatementQuit;
 class ParseStatementUpdate;
 class ParseSubqueryExpression;
@@ -1128,14 +1082,17 @@
     yycolumn += yyleng;                                   \
   }
 
-#line 1131 "SqlLexer_gen.cpp"
 /* FIXME(chasseur, qzeng): Add support for hexadecimal literals. */
 /**
  * These patterns are based on the SQL-2011 standard for syntax of numeric
  * literals (Part 2, Section 5.3 of the standard).
  **/
 
-#line 1138 "SqlLexer_gen.cpp"
+
+
+
+
+#line 1096 "SqlLexer_gen.cpp"
 
 #define INITIAL 0
 #define CONDITION_SQL 1
@@ -1169,8 +1126,8 @@
     size_t yy_buffer_stack_max; /**< capacity of stack. */
     YY_BUFFER_STATE * yy_buffer_stack; /**< Stack as an array. */
     char yy_hold_char;
-    int yy_n_chars;
-    int yyleng_r;
+    yy_size_t yy_n_chars;
+    yy_size_t yyleng_r;
     char *yy_c_buf_p;
     int yy_init;
     int yy_start;
@@ -1194,7 +1151,7 @@
 
     }; /* end struct yyguts_t */
 
-static int yy_init_globals ( yyscan_t yyscanner );
+static int yy_init_globals (yyscan_t yyscanner );
 
     /* This must go here because YYSTYPE and YYLTYPE are included
      * from bison output in section 1.*/
@@ -1204,48 +1161,48 @@
     
 int quickstep_yylex_init (yyscan_t* scanner);
 
-int quickstep_yylex_init_extra ( YY_EXTRA_TYPE user_defined, yyscan_t* scanner);
+int quickstep_yylex_init_extra (YY_EXTRA_TYPE user_defined,yyscan_t* scanner);
 
 /* Accessor methods to globals.
    These are made visible to non-reentrant scanners for convenience. */
 
-int quickstep_yylex_destroy ( yyscan_t yyscanner );
+int quickstep_yylex_destroy (yyscan_t yyscanner );
 
-int quickstep_yyget_debug ( yyscan_t yyscanner );
+int quickstep_yyget_debug (yyscan_t yyscanner );
 
-void quickstep_yyset_debug ( int debug_flag , yyscan_t yyscanner );
+void quickstep_yyset_debug (int debug_flag ,yyscan_t yyscanner );
 
-YY_EXTRA_TYPE quickstep_yyget_extra ( yyscan_t yyscanner );
+YY_EXTRA_TYPE quickstep_yyget_extra (yyscan_t yyscanner );
 
-void quickstep_yyset_extra ( YY_EXTRA_TYPE user_defined , yyscan_t yyscanner );
+void quickstep_yyset_extra (YY_EXTRA_TYPE user_defined ,yyscan_t yyscanner );
 
-FILE *quickstep_yyget_in ( yyscan_t yyscanner );
+FILE *quickstep_yyget_in (yyscan_t yyscanner );
 
-void quickstep_yyset_in  ( FILE * _in_str , yyscan_t yyscanner );
+void quickstep_yyset_in  (FILE * _in_str ,yyscan_t yyscanner );
 
-FILE *quickstep_yyget_out ( yyscan_t yyscanner );
+FILE *quickstep_yyget_out (yyscan_t yyscanner );
 
-void quickstep_yyset_out  ( FILE * _out_str , yyscan_t yyscanner );
+void quickstep_yyset_out  (FILE * _out_str ,yyscan_t yyscanner );
 
-			int quickstep_yyget_leng ( yyscan_t yyscanner );
+yy_size_t quickstep_yyget_leng (yyscan_t yyscanner );
 
-char *quickstep_yyget_text ( yyscan_t yyscanner );
+char *quickstep_yyget_text (yyscan_t yyscanner );
 
-int quickstep_yyget_lineno ( yyscan_t yyscanner );
+int quickstep_yyget_lineno (yyscan_t yyscanner );
 
-void quickstep_yyset_lineno ( int _line_number , yyscan_t yyscanner );
+void quickstep_yyset_lineno (int _line_number ,yyscan_t yyscanner );
 
-int quickstep_yyget_column  ( yyscan_t yyscanner );
+int quickstep_yyget_column  (yyscan_t yyscanner );
 
-void quickstep_yyset_column ( int _column_no , yyscan_t yyscanner );
+void quickstep_yyset_column (int _column_no ,yyscan_t yyscanner );
 
-YYSTYPE * quickstep_yyget_lval ( yyscan_t yyscanner );
+YYSTYPE * quickstep_yyget_lval (yyscan_t yyscanner );
 
-void quickstep_yyset_lval ( YYSTYPE * yylval_param , yyscan_t yyscanner );
+void quickstep_yyset_lval (YYSTYPE * yylval_param ,yyscan_t yyscanner );
 
-       YYLTYPE *quickstep_yyget_lloc ( yyscan_t yyscanner );
+       YYLTYPE *quickstep_yyget_lloc (yyscan_t yyscanner );
     
-        void quickstep_yyset_lloc ( YYLTYPE * yylloc_param , yyscan_t yyscanner );
+        void quickstep_yyset_lloc (YYLTYPE * yylloc_param ,yyscan_t yyscanner );
     
 /* Macros after this point can all be overridden by user definitions in
  * section 1.
@@ -1253,9 +1210,9 @@
 
 #ifndef YY_SKIP_YYWRAP
 #ifdef __cplusplus
-extern "C" int quickstep_yywrap ( yyscan_t yyscanner );
+extern "C" int quickstep_yywrap (yyscan_t yyscanner );
 #else
-extern int quickstep_yywrap ( yyscan_t yyscanner );
+extern int quickstep_yywrap (yyscan_t yyscanner );
 #endif
 #endif
 
@@ -1264,18 +1221,19 @@
 #endif
 
 #ifndef yytext_ptr
-static void yy_flex_strncpy ( char *, const char *, int , yyscan_t yyscanner);
+static void yy_flex_strncpy (char *,yyconst char *,int ,yyscan_t yyscanner);
 #endif
 
 #ifdef YY_NEED_STRLEN
-static int yy_flex_strlen ( const char * , yyscan_t yyscanner);
+static int yy_flex_strlen (yyconst char * ,yyscan_t yyscanner);
 #endif
 
 #ifndef YY_NO_INPUT
+
 #ifdef __cplusplus
-static int yyinput ( yyscan_t yyscanner );
+static int yyinput (yyscan_t yyscanner );
 #else
-static int input ( yyscan_t yyscanner );
+static int input (yyscan_t yyscanner );
 #endif
 
 #endif
@@ -1295,7 +1253,7 @@
 /* This used to be an fputs(), but since the string might contain NUL's,
  * we now use fwrite().
  */
-#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
+#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
 #endif
 
 /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
@@ -1306,7 +1264,7 @@
 	if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
 		{ \
 		int c = '*'; \
-		int n; \
+		size_t n; \
 		for ( n = 0; n < max_size && \
 			     (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
 			buf[n] = (char) c; \
@@ -1319,7 +1277,7 @@
 	else \
 		{ \
 		errno=0; \
-		while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
+		while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
 			{ \
 			if( errno != EINTR) \
 				{ \
@@ -1361,7 +1319,7 @@
 #define YY_DECL_IS_OURS 1
 
 extern int quickstep_yylex \
-               (YYSTYPE * yylval_param, YYLTYPE * yylloc_param , yyscan_t yyscanner);
+               (YYSTYPE * yylval_param,YYLTYPE * yylloc_param ,yyscan_t yyscanner);
 
 #define YY_DECL int quickstep_yylex \
                (YYSTYPE * yylval_param, YYLTYPE * yylloc_param , yyscan_t yyscanner)
@@ -1422,10 +1380,10 @@
 		}
 
 	{
-#line 131 "../SqlLexer.lpp"
+#line 132 "../SqlLexer.lpp"
 
 
-#line 1428 "SqlLexer_gen.cpp"
+#line 1387 "SqlLexer_gen.cpp"
 
 	while ( /*CONSTCOND*/1 )		/* loops until end-of-file is reached */
 		{
@@ -1452,13 +1410,13 @@
 			while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
 				{
 				yy_current_state = (int) yy_def[yy_current_state];
-				if ( yy_current_state >= 593 )
-					yy_c = yy_meta[yy_c];
+				if ( yy_current_state >= 599 )
+					yy_c = yy_meta[(unsigned int) yy_c];
 				}
-			yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
+			yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
 			++yy_cp;
 			}
-		while ( yy_current_state != 592 );
+		while ( yy_current_state != 598 );
 		yy_cp = yyg->yy_last_accepting_cpos;
 		yy_current_state = yyg->yy_last_accepting_state;
 
@@ -1469,10 +1427,10 @@
 
 		if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] )
 			{
-			int yyl;
+			yy_size_t yyl;
 			for ( yyl = 0; yyl < yyleng; ++yyl )
 				if ( yytext[yyl] == '\n' )
-					
+					   
     do{ yylineno++;
         yycolumn=0;
     }while(0)
@@ -1492,7 +1450,7 @@
 
 case 1:
 YY_RULE_SETUP
-#line 134 "../SqlLexer.lpp"
+#line 135 "../SqlLexer.lpp"
 {
     /* A forward slash character represents a system command. */
     BEGIN(CONDITION_COMMAND);
@@ -1504,7 +1462,7 @@
 case 2:
 /* rule 2 can match eol */
 YY_RULE_SETUP
-#line 142 "../SqlLexer.lpp"
+#line 143 "../SqlLexer.lpp"
 {
     /* This is a SQL command. Place the char back and process normally. */
     yyless(0);
@@ -1516,7 +1474,7 @@
 
 case 3:
 YY_RULE_SETUP
-#line 151 "../SqlLexer.lpp"
+#line 152 "../SqlLexer.lpp"
 {
     /* This is a command argument. */
     yylval->string_value_ = new quickstep::ParseString(
@@ -1526,7 +1484,7 @@
 	YY_BREAK
 case 4:
 YY_RULE_SETUP
-#line 158 "../SqlLexer.lpp"
+#line 159 "../SqlLexer.lpp"
 {
     /* Ignore whitespace. */
   }
@@ -1534,7 +1492,7 @@
 case 5:
 /* rule 5 can match eol */
 YY_RULE_SETUP
-#line 162 "../SqlLexer.lpp"
+#line 163 "../SqlLexer.lpp"
 {
     /* Newline reverts the lexer to the initial state. */
     yycolumn = 0;
@@ -1546,672 +1504,682 @@
 
 case 6:
 YY_RULE_SETUP
-#line 171 "../SqlLexer.lpp"
+#line 172 "../SqlLexer.lpp"
 return TOKEN_ADD;
 	YY_BREAK
 case 7:
 YY_RULE_SETUP
-#line 172 "../SqlLexer.lpp"
+#line 173 "../SqlLexer.lpp"
 return TOKEN_ALL;
 	YY_BREAK
 case 8:
 YY_RULE_SETUP
-#line 173 "../SqlLexer.lpp"
+#line 174 "../SqlLexer.lpp"
 return TOKEN_ALTER;
 	YY_BREAK
 case 9:
 YY_RULE_SETUP
-#line 174 "../SqlLexer.lpp"
+#line 175 "../SqlLexer.lpp"
 return TOKEN_AND;
 	YY_BREAK
 case 10:
 YY_RULE_SETUP
-#line 175 "../SqlLexer.lpp"
+#line 176 "../SqlLexer.lpp"
 return TOKEN_AS;
 	YY_BREAK
 case 11:
 YY_RULE_SETUP
-#line 176 "../SqlLexer.lpp"
+#line 177 "../SqlLexer.lpp"
 return TOKEN_ASC;
 	YY_BREAK
 case 12:
 YY_RULE_SETUP
-#line 177 "../SqlLexer.lpp"
+#line 178 "../SqlLexer.lpp"
 return TOKEN_ASC;
 	YY_BREAK
 case 13:
 YY_RULE_SETUP
-#line 178 "../SqlLexer.lpp"
+#line 179 "../SqlLexer.lpp"
 return TOKEN_BETWEEN;
 	YY_BREAK
 case 14:
 YY_RULE_SETUP
-#line 179 "../SqlLexer.lpp"
+#line 180 "../SqlLexer.lpp"
 return TOKEN_BIGINT;
 	YY_BREAK
 case 15:
 YY_RULE_SETUP
-#line 180 "../SqlLexer.lpp"
+#line 181 "../SqlLexer.lpp"
 return TOKEN_BIT;
 	YY_BREAK
 case 16:
 YY_RULE_SETUP
-#line 181 "../SqlLexer.lpp"
+#line 182 "../SqlLexer.lpp"
 return TOKEN_BITWEAVING;
 	YY_BREAK
 case 17:
 YY_RULE_SETUP
-#line 182 "../SqlLexer.lpp"
+#line 183 "../SqlLexer.lpp"
 return TOKEN_BLOCKPROPERTIES;
 	YY_BREAK
 case 18:
 YY_RULE_SETUP
-#line 183 "../SqlLexer.lpp"
+#line 184 "../SqlLexer.lpp"
 return TOKEN_BLOCKSAMPLE;
 	YY_BREAK
 case 19:
 YY_RULE_SETUP
-#line 184 "../SqlLexer.lpp"
+#line 185 "../SqlLexer.lpp"
 return TOKEN_BLOOM_FILTER;
 	YY_BREAK
 case 20:
 YY_RULE_SETUP
-#line 185 "../SqlLexer.lpp"
+#line 186 "../SqlLexer.lpp"
 return TOKEN_CASE;
 	YY_BREAK
 case 21:
 YY_RULE_SETUP
-#line 186 "../SqlLexer.lpp"
+#line 187 "../SqlLexer.lpp"
 return TOKEN_CSB_TREE;
 	YY_BREAK
 case 22:
 YY_RULE_SETUP
-#line 187 "../SqlLexer.lpp"
+#line 188 "../SqlLexer.lpp"
 return TOKEN_BY;
 	YY_BREAK
 case 23:
 YY_RULE_SETUP
-#line 188 "../SqlLexer.lpp"
+#line 189 "../SqlLexer.lpp"
 return TOKEN_CHARACTER;
 	YY_BREAK
 case 24:
 YY_RULE_SETUP
-#line 189 "../SqlLexer.lpp"
+#line 190 "../SqlLexer.lpp"
 return TOKEN_CHARACTER;
 	YY_BREAK
 case 25:
 YY_RULE_SETUP
-#line 190 "../SqlLexer.lpp"
+#line 191 "../SqlLexer.lpp"
 return TOKEN_CHECK;
 	YY_BREAK
 case 26:
 YY_RULE_SETUP
-#line 191 "../SqlLexer.lpp"
+#line 192 "../SqlLexer.lpp"
 return TOKEN_COLUMN;
 	YY_BREAK
 case 27:
 YY_RULE_SETUP
-#line 192 "../SqlLexer.lpp"
+#line 193 "../SqlLexer.lpp"
 return TOKEN_CONSTRAINT;
 	YY_BREAK
 case 28:
 YY_RULE_SETUP
-#line 193 "../SqlLexer.lpp"
+#line 194 "../SqlLexer.lpp"
 return TOKEN_COPY;
 	YY_BREAK
 case 29:
 YY_RULE_SETUP
-#line 194 "../SqlLexer.lpp"
+#line 195 "../SqlLexer.lpp"
 return TOKEN_CREATE;
 	YY_BREAK
 case 30:
 YY_RULE_SETUP
-#line 195 "../SqlLexer.lpp"
+#line 196 "../SqlLexer.lpp"
 return TOKEN_CURRENT;
 	YY_BREAK
 case 31:
 YY_RULE_SETUP
-#line 196 "../SqlLexer.lpp"
+#line 197 "../SqlLexer.lpp"
 return TOKEN_DATE;
 	YY_BREAK
 case 32:
 YY_RULE_SETUP
-#line 197 "../SqlLexer.lpp"
+#line 198 "../SqlLexer.lpp"
 return TOKEN_DATETIME;
 	YY_BREAK
 case 33:
 YY_RULE_SETUP
-#line 198 "../SqlLexer.lpp"
+#line 199 "../SqlLexer.lpp"
 return TOKEN_DAY;
 	YY_BREAK
 case 34:
 YY_RULE_SETUP
-#line 199 "../SqlLexer.lpp"
+#line 200 "../SqlLexer.lpp"
 return TOKEN_DECIMAL;
 	YY_BREAK
 case 35:
 YY_RULE_SETUP
-#line 200 "../SqlLexer.lpp"
+#line 201 "../SqlLexer.lpp"
 return TOKEN_DEFAULT;
 	YY_BREAK
 case 36:
 YY_RULE_SETUP
-#line 201 "../SqlLexer.lpp"
+#line 202 "../SqlLexer.lpp"
 return TOKEN_DELETE;
 	YY_BREAK
 case 37:
 YY_RULE_SETUP
-#line 202 "../SqlLexer.lpp"
+#line 203 "../SqlLexer.lpp"
 return TOKEN_DELIMITER;
 	YY_BREAK
 case 38:
 YY_RULE_SETUP
-#line 203 "../SqlLexer.lpp"
+#line 204 "../SqlLexer.lpp"
 return TOKEN_DESC;
 	YY_BREAK
 case 39:
 YY_RULE_SETUP
-#line 204 "../SqlLexer.lpp"
+#line 205 "../SqlLexer.lpp"
 return TOKEN_DESC;
 	YY_BREAK
 case 40:
 YY_RULE_SETUP
-#line 205 "../SqlLexer.lpp"
+#line 206 "../SqlLexer.lpp"
 return TOKEN_DISTINCT;
 	YY_BREAK
 case 41:
 YY_RULE_SETUP
-#line 206 "../SqlLexer.lpp"
+#line 207 "../SqlLexer.lpp"
 return TOKEN_DOUBLE;
 	YY_BREAK
 case 42:
 YY_RULE_SETUP
-#line 207 "../SqlLexer.lpp"
+#line 208 "../SqlLexer.lpp"
 return TOKEN_DROP;
 	YY_BREAK
 case 43:
 YY_RULE_SETUP
-#line 208 "../SqlLexer.lpp"
+#line 209 "../SqlLexer.lpp"
 return TOKEN_ELSE;
 	YY_BREAK
 case 44:
 YY_RULE_SETUP
-#line 209 "../SqlLexer.lpp"
+#line 210 "../SqlLexer.lpp"
 return TOKEN_END;
 	YY_BREAK
 case 45:
 YY_RULE_SETUP
-#line 210 "../SqlLexer.lpp"
+#line 211 "../SqlLexer.lpp"
 return TOKEN_ESCAPE_STRINGS;
 	YY_BREAK
 case 46:
 YY_RULE_SETUP
-#line 211 "../SqlLexer.lpp"
+#line 212 "../SqlLexer.lpp"
 return TOKEN_EXISTS;
 	YY_BREAK
 case 47:
 YY_RULE_SETUP
-#line 212 "../SqlLexer.lpp"
+#line 213 "../SqlLexer.lpp"
 return TOKEN_EXTRACT;
 	YY_BREAK
 case 48:
 YY_RULE_SETUP
-#line 213 "../SqlLexer.lpp"
+#line 214 "../SqlLexer.lpp"
 return TOKEN_FALSE;
 	YY_BREAK
 case 49:
 YY_RULE_SETUP
-#line 214 "../SqlLexer.lpp"
+#line 215 "../SqlLexer.lpp"
 return TOKEN_FIRST;
 	YY_BREAK
 case 50:
 YY_RULE_SETUP
-#line 215 "../SqlLexer.lpp"
+#line 216 "../SqlLexer.lpp"
 return TOKEN_FLOAT;
 	YY_BREAK
 case 51:
 YY_RULE_SETUP
-#line 216 "../SqlLexer.lpp"
+#line 217 "../SqlLexer.lpp"
 return TOKEN_FOLLOWING;
 	YY_BREAK
 case 52:
 YY_RULE_SETUP
-#line 217 "../SqlLexer.lpp"
+#line 218 "../SqlLexer.lpp"
 return TOKEN_FOR;
 	YY_BREAK
 case 53:
 YY_RULE_SETUP
-#line 218 "../SqlLexer.lpp"
+#line 219 "../SqlLexer.lpp"
 return TOKEN_FOREIGN;
 	YY_BREAK
 case 54:
 YY_RULE_SETUP
-#line 219 "../SqlLexer.lpp"
+#line 220 "../SqlLexer.lpp"
 return TOKEN_FROM;
 	YY_BREAK
 case 55:
 YY_RULE_SETUP
-#line 220 "../SqlLexer.lpp"
+#line 221 "../SqlLexer.lpp"
 return TOKEN_FULL;
 	YY_BREAK
 case 56:
 YY_RULE_SETUP
-#line 221 "../SqlLexer.lpp"
+#line 222 "../SqlLexer.lpp"
 return TOKEN_GROUP;
 	YY_BREAK
 case 57:
 YY_RULE_SETUP
-#line 222 "../SqlLexer.lpp"
+#line 223 "../SqlLexer.lpp"
 return TOKEN_HASH;
 	YY_BREAK
 case 58:
 YY_RULE_SETUP
-#line 223 "../SqlLexer.lpp"
+#line 224 "../SqlLexer.lpp"
 return TOKEN_HAVING;
 	YY_BREAK
 case 59:
 YY_RULE_SETUP
-#line 224 "../SqlLexer.lpp"
+#line 225 "../SqlLexer.lpp"
 return TOKEN_HOUR;
 	YY_BREAK
 case 60:
 YY_RULE_SETUP
-#line 225 "../SqlLexer.lpp"
+#line 226 "../SqlLexer.lpp"
 return TOKEN_IN;
 	YY_BREAK
 case 61:
 YY_RULE_SETUP
-#line 226 "../SqlLexer.lpp"
+#line 227 "../SqlLexer.lpp"
 return TOKEN_INDEX;
 	YY_BREAK
 case 62:
 YY_RULE_SETUP
-#line 227 "../SqlLexer.lpp"
+#line 228 "../SqlLexer.lpp"
 return TOKEN_INNER;
 	YY_BREAK
 case 63:
 YY_RULE_SETUP
-#line 228 "../SqlLexer.lpp"
+#line 229 "../SqlLexer.lpp"
 return TOKEN_INSERT;
 	YY_BREAK
 case 64:
 YY_RULE_SETUP
-#line 229 "../SqlLexer.lpp"
+#line 230 "../SqlLexer.lpp"
 return TOKEN_INTEGER;
 	YY_BREAK
 case 65:
 YY_RULE_SETUP
-#line 230 "../SqlLexer.lpp"
+#line 231 "../SqlLexer.lpp"
 return TOKEN_INTEGER;
 	YY_BREAK
 case 66:
 YY_RULE_SETUP
-#line 231 "../SqlLexer.lpp"
-return TOKEN_INTERVAL;
+#line 232 "../SqlLexer.lpp"
+return TOKEN_INTERSECT;
 	YY_BREAK
 case 67:
 YY_RULE_SETUP
-#line 232 "../SqlLexer.lpp"
-return TOKEN_INTO;
+#line 233 "../SqlLexer.lpp"
+return TOKEN_INTERVAL;
 	YY_BREAK
 case 68:
 YY_RULE_SETUP
-#line 233 "../SqlLexer.lpp"
-return TOKEN_IS;
+#line 234 "../SqlLexer.lpp"
+return TOKEN_INTO;
 	YY_BREAK
 case 69:
 YY_RULE_SETUP
-#line 234 "../SqlLexer.lpp"
-return TOKEN_JOIN;
+#line 235 "../SqlLexer.lpp"
+return TOKEN_IS;
 	YY_BREAK
 case 70:
 YY_RULE_SETUP
-#line 235 "../SqlLexer.lpp"
-return TOKEN_KEY;
+#line 236 "../SqlLexer.lpp"
+return TOKEN_JOIN;
 	YY_BREAK
 case 71:
 YY_RULE_SETUP
-#line 236 "../SqlLexer.lpp"
-return TOKEN_LAST;
+#line 237 "../SqlLexer.lpp"
+return TOKEN_KEY;
 	YY_BREAK
 case 72:
 YY_RULE_SETUP
-#line 237 "../SqlLexer.lpp"
-return TOKEN_LEFT;
+#line 238 "../SqlLexer.lpp"
+return TOKEN_LAST;
 	YY_BREAK
 case 73:
 YY_RULE_SETUP
-#line 238 "../SqlLexer.lpp"
-return TOKEN_LIKE;
+#line 239 "../SqlLexer.lpp"
+return TOKEN_LEFT;
 	YY_BREAK
 case 74:
 YY_RULE_SETUP
-#line 239 "../SqlLexer.lpp"
-return TOKEN_LIMIT;
+#line 240 "../SqlLexer.lpp"
+return TOKEN_LIKE;
 	YY_BREAK
 case 75:
 YY_RULE_SETUP
-#line 240 "../SqlLexer.lpp"
-return TOKEN_LONG;
+#line 241 "../SqlLexer.lpp"
+return TOKEN_LIMIT;
 	YY_BREAK
 case 76:
 YY_RULE_SETUP
-#line 241 "../SqlLexer.lpp"
-return TOKEN_MINUTE;
+#line 242 "../SqlLexer.lpp"
+return TOKEN_LONG;
 	YY_BREAK
 case 77:
 YY_RULE_SETUP
-#line 242 "../SqlLexer.lpp"
-return TOKEN_MONTH;
+#line 243 "../SqlLexer.lpp"
+return TOKEN_MINUTE;
 	YY_BREAK
 case 78:
 YY_RULE_SETUP
-#line 243 "../SqlLexer.lpp"
-return TOKEN_NOT;
+#line 244 "../SqlLexer.lpp"
+return TOKEN_MONTH;
 	YY_BREAK
 case 79:
 YY_RULE_SETUP
-#line 244 "../SqlLexer.lpp"
-return TOKEN_NULL;
+#line 245 "../SqlLexer.lpp"
+return TOKEN_NOT;
 	YY_BREAK
 case 80:
 YY_RULE_SETUP
-#line 245 "../SqlLexer.lpp"
-return TOKEN_NULLS;
+#line 246 "../SqlLexer.lpp"
+return TOKEN_NULL;
 	YY_BREAK
 case 81:
 YY_RULE_SETUP
-#line 246 "../SqlLexer.lpp"
-return TOKEN_OFF;
+#line 247 "../SqlLexer.lpp"
+return TOKEN_NULLS;
 	YY_BREAK
 case 82:
 YY_RULE_SETUP
-#line 247 "../SqlLexer.lpp"
-return TOKEN_ON;
+#line 248 "../SqlLexer.lpp"
+return TOKEN_OFF;
 	YY_BREAK
 case 83:
 YY_RULE_SETUP
-#line 248 "../SqlLexer.lpp"
-return TOKEN_OR;
+#line 249 "../SqlLexer.lpp"
+return TOKEN_ON;
 	YY_BREAK
 case 84:
 YY_RULE_SETUP
-#line 249 "../SqlLexer.lpp"
-return TOKEN_ORDER;
+#line 250 "../SqlLexer.lpp"
+return TOKEN_OR;
 	YY_BREAK
 case 85:
 YY_RULE_SETUP
-#line 250 "../SqlLexer.lpp"
-return TOKEN_OUTER;
+#line 251 "../SqlLexer.lpp"
+return TOKEN_ORDER;
 	YY_BREAK
 case 86:
 YY_RULE_SETUP
-#line 251 "../SqlLexer.lpp"
-return TOKEN_OVER;
+#line 252 "../SqlLexer.lpp"
+return TOKEN_OUTER;
 	YY_BREAK
 case 87:
 YY_RULE_SETUP
-#line 252 "../SqlLexer.lpp"
-return TOKEN_PARTITION;
+#line 253 "../SqlLexer.lpp"
+return TOKEN_OVER;
 	YY_BREAK
 case 88:
 YY_RULE_SETUP
-#line 253 "../SqlLexer.lpp"
-return TOKEN_PARTITIONS;
+#line 254 "../SqlLexer.lpp"
+return TOKEN_PARTITION;
 	YY_BREAK
 case 89:
 YY_RULE_SETUP
-#line 254 "../SqlLexer.lpp"
-return TOKEN_PERCENT;
+#line 255 "../SqlLexer.lpp"
+return TOKEN_PARTITIONS;
 	YY_BREAK
 case 90:
 YY_RULE_SETUP
-#line 255 "../SqlLexer.lpp"
-return TOKEN_PRECEDING;
+#line 256 "../SqlLexer.lpp"
+return TOKEN_PERCENT;
 	YY_BREAK
 case 91:
 YY_RULE_SETUP
-#line 256 "../SqlLexer.lpp"
-return TOKEN_PRIMARY;
+#line 257 "../SqlLexer.lpp"
+return TOKEN_PRECEDING;
 	YY_BREAK
 case 92:
 YY_RULE_SETUP
-#line 257 "../SqlLexer.lpp"
-return TOKEN_PRIORITY;
+#line 258 "../SqlLexer.lpp"
+return TOKEN_PRIMARY;
 	YY_BREAK
 case 93:
 YY_RULE_SETUP
-#line 258 "../SqlLexer.lpp"
-return TOKEN_QUIT;
+#line 259 "../SqlLexer.lpp"
+return TOKEN_PRIORITY;
 	YY_BREAK
 case 94:
 YY_RULE_SETUP
-#line 259 "../SqlLexer.lpp"
-return TOKEN_RANGE;
+#line 260 "../SqlLexer.lpp"
+return TOKEN_QUIT;
 	YY_BREAK
 case 95:
 YY_RULE_SETUP
-#line 260 "../SqlLexer.lpp"
-return TOKEN_REAL;
+#line 261 "../SqlLexer.lpp"
+return TOKEN_RANGE;
 	YY_BREAK
 case 96:
 YY_RULE_SETUP
-#line 261 "../SqlLexer.lpp"
-return TOKEN_REFERENCES;
+#line 262 "../SqlLexer.lpp"
+return TOKEN_REAL;
 	YY_BREAK
 case 97:
 YY_RULE_SETUP
-#line 262 "../SqlLexer.lpp"
-return TOKEN_REGEXP;
+#line 263 "../SqlLexer.lpp"
+return TOKEN_REFERENCES;
 	YY_BREAK
 case 98:
 YY_RULE_SETUP
-#line 263 "../SqlLexer.lpp"
-return TOKEN_RIGHT;
+#line 264 "../SqlLexer.lpp"
+return TOKEN_REGEXP;
 	YY_BREAK
 case 99:
 YY_RULE_SETUP
-#line 264 "../SqlLexer.lpp"
-return TOKEN_ROW;
+#line 265 "../SqlLexer.lpp"
+return TOKEN_RIGHT;
 	YY_BREAK
 case 100:
 YY_RULE_SETUP
-#line 265 "../SqlLexer.lpp"
-return TOKEN_ROW_DELIMITER;
+#line 266 "../SqlLexer.lpp"
+return TOKEN_ROW;
 	YY_BREAK
 case 101:
 YY_RULE_SETUP
-#line 266 "../SqlLexer.lpp"
-return TOKEN_ROWS;
+#line 267 "../SqlLexer.lpp"
+return TOKEN_ROW_DELIMITER;
 	YY_BREAK
 case 102:
 YY_RULE_SETUP
-#line 267 "../SqlLexer.lpp"
-return TOKEN_SECOND;
+#line 268 "../SqlLexer.lpp"
+return TOKEN_ROWS;
 	YY_BREAK
 case 103:
 YY_RULE_SETUP
-#line 268 "../SqlLexer.lpp"
-return TOKEN_SELECT;
+#line 269 "../SqlLexer.lpp"
+return TOKEN_SECOND;
 	YY_BREAK
 case 104:
 YY_RULE_SETUP
-#line 269 "../SqlLexer.lpp"
-return TOKEN_SET;
+#line 270 "../SqlLexer.lpp"
+return TOKEN_SELECT;
 	YY_BREAK
 case 105:
 YY_RULE_SETUP
-#line 270 "../SqlLexer.lpp"
-return TOKEN_SMA;
+#line 271 "../SqlLexer.lpp"
+return TOKEN_SET;
 	YY_BREAK
 case 106:
 YY_RULE_SETUP
-#line 271 "../SqlLexer.lpp"
-return TOKEN_SMALLINT;
+#line 272 "../SqlLexer.lpp"
+return TOKEN_SMA;
 	YY_BREAK
 case 107:
 YY_RULE_SETUP
-#line 272 "../SqlLexer.lpp"
-return TOKEN_SUBSTRING;
+#line 273 "../SqlLexer.lpp"
+return TOKEN_SMALLINT;
 	YY_BREAK
 case 108:
 YY_RULE_SETUP
-#line 273 "../SqlLexer.lpp"
-return TOKEN_TABLE;
+#line 274 "../SqlLexer.lpp"
+return TOKEN_SUBSTRING;
 	YY_BREAK
 case 109:
 YY_RULE_SETUP
-#line 274 "../SqlLexer.lpp"
-return TOKEN_THEN;
+#line 275 "../SqlLexer.lpp"
+return TOKEN_TABLE;
 	YY_BREAK
 case 110:
 YY_RULE_SETUP
-#line 275 "../SqlLexer.lpp"
-return TOKEN_TIME;
+#line 276 "../SqlLexer.lpp"
+return TOKEN_THEN;
 	YY_BREAK
 case 111:
 YY_RULE_SETUP
-#line 276 "../SqlLexer.lpp"
-return TOKEN_TIMESTAMP;
+#line 277 "../SqlLexer.lpp"
+return TOKEN_TIME;
 	YY_BREAK
 case 112:
 YY_RULE_SETUP
-#line 277 "../SqlLexer.lpp"
-return TOKEN_TRUE;
+#line 278 "../SqlLexer.lpp"
+return TOKEN_TIMESTAMP;
 	YY_BREAK
 case 113:
 YY_RULE_SETUP
-#line 278 "../SqlLexer.lpp"
-return TOKEN_TUPLESAMPLE;
+#line 279 "../SqlLexer.lpp"
+return TOKEN_TRUE;
 	YY_BREAK
 case 114:
 YY_RULE_SETUP
-#line 279 "../SqlLexer.lpp"
-return TOKEN_UNBOUNDED;
+#line 280 "../SqlLexer.lpp"
+return TOKEN_TUPLESAMPLE;
 	YY_BREAK
 case 115:
 YY_RULE_SETUP
-#line 280 "../SqlLexer.lpp"
-return TOKEN_UNIQUE;
+#line 281 "../SqlLexer.lpp"
+return TOKEN_UNBOUNDED;
 	YY_BREAK
 case 116:
 YY_RULE_SETUP
-#line 281 "../SqlLexer.lpp"
-return TOKEN_UPDATE;
+#line 282 "../SqlLexer.lpp"
+return TOKEN_UNION;
 	YY_BREAK
 case 117:
 YY_RULE_SETUP
-#line 282 "../SqlLexer.lpp"
-return TOKEN_USING;
+#line 283 "../SqlLexer.lpp"
+return TOKEN_UNIQUE;
 	YY_BREAK
 case 118:
 YY_RULE_SETUP
-#line 283 "../SqlLexer.lpp"
-return TOKEN_VALUES;
+#line 284 "../SqlLexer.lpp"
+return TOKEN_UPDATE;
 	YY_BREAK
 case 119:
 YY_RULE_SETUP
-#line 284 "../SqlLexer.lpp"
-return TOKEN_VARCHAR;
+#line 285 "../SqlLexer.lpp"
+return TOKEN_USING;
 	YY_BREAK
 case 120:
 YY_RULE_SETUP
-#line 285 "../SqlLexer.lpp"
-return TOKEN_WHEN;
+#line 286 "../SqlLexer.lpp"
+return TOKEN_VALUES;
 	YY_BREAK
 case 121:
 YY_RULE_SETUP
-#line 286 "../SqlLexer.lpp"
-return TOKEN_WHERE;
+#line 287 "../SqlLexer.lpp"
+return TOKEN_VARCHAR;
 	YY_BREAK
 case 122:
 YY_RULE_SETUP
-#line 287 "../SqlLexer.lpp"
-return TOKEN_WINDOW;
+#line 288 "../SqlLexer.lpp"
+return TOKEN_WHEN;
 	YY_BREAK
 case 123:
 YY_RULE_SETUP
-#line 288 "../SqlLexer.lpp"
-return TOKEN_WITH;
+#line 289 "../SqlLexer.lpp"
+return TOKEN_WHERE;
 	YY_BREAK
 case 124:
 YY_RULE_SETUP
-#line 289 "../SqlLexer.lpp"
-return TOKEN_YEAR;
+#line 290 "../SqlLexer.lpp"
+return TOKEN_WINDOW;
 	YY_BREAK
 case 125:
 YY_RULE_SETUP
-#line 290 "../SqlLexer.lpp"
-return TOKEN_YEARMONTH;
+#line 291 "../SqlLexer.lpp"
+return TOKEN_WITH;
 	YY_BREAK
 case 126:
 YY_RULE_SETUP
 #line 292 "../SqlLexer.lpp"
-return TOKEN_EQ;
+return TOKEN_YEAR;
 	YY_BREAK
 case 127:
 YY_RULE_SETUP
 #line 293 "../SqlLexer.lpp"
-return TOKEN_NEQ;
+return TOKEN_YEARMONTH;
 	YY_BREAK
 case 128:
 YY_RULE_SETUP
-#line 294 "../SqlLexer.lpp"
-return TOKEN_NEQ;
+#line 295 "../SqlLexer.lpp"
+return TOKEN_EQ;
 	YY_BREAK
 case 129:
 YY_RULE_SETUP
-#line 295 "../SqlLexer.lpp"
-return TOKEN_LT;
+#line 296 "../SqlLexer.lpp"
+return TOKEN_NEQ;
 	YY_BREAK
 case 130:
 YY_RULE_SETUP
-#line 296 "../SqlLexer.lpp"
-return TOKEN_GT;
+#line 297 "../SqlLexer.lpp"
+return TOKEN_NEQ;
 	YY_BREAK
 case 131:
 YY_RULE_SETUP
-#line 297 "../SqlLexer.lpp"
-return TOKEN_LEQ;
+#line 298 "../SqlLexer.lpp"
+return TOKEN_LT;
 	YY_BREAK
 case 132:
 YY_RULE_SETUP
-#line 298 "../SqlLexer.lpp"
-return TOKEN_GEQ;
+#line 299 "../SqlLexer.lpp"
+return TOKEN_GT;
 	YY_BREAK
 case 133:
 YY_RULE_SETUP
 #line 300 "../SqlLexer.lpp"
-return yytext[0];
+return TOKEN_LEQ;
 	YY_BREAK
 case 134:
 YY_RULE_SETUP
 #line 301 "../SqlLexer.lpp"
+return TOKEN_GEQ;
+	YY_BREAK
+case 135:
+YY_RULE_SETUP
+#line 303 "../SqlLexer.lpp"
+return yytext[0];
+	YY_BREAK
+case 136:
+YY_RULE_SETUP
+#line 304 "../SqlLexer.lpp"
 return yytext[0];
 	YY_BREAK
 /**
     * Quoted strings. Prefacing a string with an 'e' or 'E' causes escape
     * sequences to be processed (as in PostgreSQL).
     **/
-case 135:
+case 137:
 YY_RULE_SETUP
-#line 307 "../SqlLexer.lpp"
+#line 310 "../SqlLexer.lpp"
 {
     yylval->string_value_ = new quickstep::ParseString(yylloc->first_line, yylloc->first_column);
     BEGIN(CONDITION_STRING_SINGLE_QUOTED_ESCAPED);
   }
 	YY_BREAK
-case 136:
+case 138:
 YY_RULE_SETUP
-#line 312 "../SqlLexer.lpp"
+#line 315 "../SqlLexer.lpp"
 {
     yylval->string_value_ = new quickstep::ParseString(yylloc->first_line, yylloc->first_column);
     BEGIN(CONDITION_STRING_SINGLE_QUOTED);
   }
 	YY_BREAK
-case 137:
+case 139:
 YY_RULE_SETUP
-#line 317 "../SqlLexer.lpp"
+#line 320 "../SqlLexer.lpp"
 {
     yylval->string_value_ = new quickstep::ParseString(yylloc->first_line, yylloc->first_column);
     BEGIN(CONDITION_STRING_DOUBLE_QUOTED);
@@ -2223,7 +2191,7 @@
 case YY_STATE_EOF(CONDITION_STRING_SINGLE_QUOTED):
 case YY_STATE_EOF(CONDITION_STRING_SINGLE_QUOTED_ESCAPED):
 case YY_STATE_EOF(CONDITION_STRING_DOUBLE_QUOTED):
-#line 326 "../SqlLexer.lpp"
+#line 329 "../SqlLexer.lpp"
 {
     delete yylval->string_value_;
     BEGIN(INITIAL);
@@ -2234,9 +2202,9 @@
 
 /* Process escape sequences. */
 
-case 138:
+case 140:
 YY_RULE_SETUP
-#line 336 "../SqlLexer.lpp"
+#line 339 "../SqlLexer.lpp"
 {
     /* Octal code */
     unsigned int code;
@@ -2250,9 +2218,9 @@
     yylval->string_value_->push_back(code);
   }
 	YY_BREAK
-case 139:
+case 141:
 YY_RULE_SETUP
-#line 348 "../SqlLexer.lpp"
+#line 351 "../SqlLexer.lpp"
 {
     /* Hexadecimal code */
     unsigned int code;
@@ -2260,9 +2228,9 @@
     yylval->string_value_->push_back(code);
   }
 	YY_BREAK
-case 140:
+case 142:
 YY_RULE_SETUP
-#line 354 "../SqlLexer.lpp"
+#line 357 "../SqlLexer.lpp"
 {
     /* A numeric escape sequence that isn't correctly specified. */
     delete yylval->string_value_;
@@ -2271,58 +2239,58 @@
     return TOKEN_LEX_ERROR;
   }
 	YY_BREAK
-case 141:
+case 143:
 YY_RULE_SETUP
-#line 361 "../SqlLexer.lpp"
+#line 364 "../SqlLexer.lpp"
 {
     /* Backspace */
     yylval->string_value_->push_back('\b');
   }
 	YY_BREAK
-case 142:
+case 144:
 YY_RULE_SETUP
-#line 365 "../SqlLexer.lpp"
+#line 368 "../SqlLexer.lpp"
 {
     /* Form-feed */
     yylval->string_value_->push_back('\f');
   }
 	YY_BREAK
-case 143:
+case 145:
 YY_RULE_SETUP
-#line 369 "../SqlLexer.lpp"
+#line 372 "../SqlLexer.lpp"
 {
     /* Newline */
     yylval->string_value_->push_back('\n');
   }
 	YY_BREAK
-case 144:
+case 146:
 YY_RULE_SETUP
-#line 373 "../SqlLexer.lpp"
+#line 376 "../SqlLexer.lpp"
 {
     /* Carriage-return */
     yylval->string_value_->push_back('\r');
   }
 	YY_BREAK
-case 145:
+case 147:
 YY_RULE_SETUP
-#line 377 "../SqlLexer.lpp"
+#line 380 "../SqlLexer.lpp"
 {
     /* Horizontal Tab */
     yylval->string_value_->push_back('\t');
   }
 	YY_BREAK
-case 146:
-/* rule 146 can match eol */
+case 148:
+/* rule 148 can match eol */
 YY_RULE_SETUP
-#line 381 "../SqlLexer.lpp"
+#line 384 "../SqlLexer.lpp"
 {
     /* Any other character (including actual newline or carriage return) */
     yylval->string_value_->push_back(yytext[1]);
   }
 	YY_BREAK
-case 147:
+case 149:
 YY_RULE_SETUP
-#line 385 "../SqlLexer.lpp"
+#line 388 "../SqlLexer.lpp"
 {
     /* This should only be encountered right before an EOF. */
     delete yylval->string_value_;
@@ -2333,17 +2301,17 @@
 	YY_BREAK
 
 
-case 148:
+case 150:
 YY_RULE_SETUP
-#line 395 "../SqlLexer.lpp"
+#line 398 "../SqlLexer.lpp"
 {
     /* Two quotes in a row become a single quote (this is specified by the SQL standard). */
     yylval->string_value_->push_back('\'');
   }
 	YY_BREAK
-case 149:
+case 151:
 YY_RULE_SETUP
-#line 399 "../SqlLexer.lpp"
+#line 402 "../SqlLexer.lpp"
 {
     /* End string */
     BEGIN(CONDITION_SQL);
@@ -2352,17 +2320,17 @@
 	YY_BREAK
 
 
-case 150:
+case 152:
 YY_RULE_SETUP
-#line 407 "../SqlLexer.lpp"
+#line 410 "../SqlLexer.lpp"
 {
     /* Two quotes in a row become a single quote (this is specified by the SQL standard). */
     yylval->string_value_->push_back('"');
   }
 	YY_BREAK
-case 151:
+case 153:
 YY_RULE_SETUP
-#line 411 "../SqlLexer.lpp"
+#line 414 "../SqlLexer.lpp"
 {
     /* End string */
     BEGIN(CONDITION_SQL);
@@ -2370,94 +2338,94 @@
   }
 	YY_BREAK
 
-case 152:
-/* rule 152 can match eol */
+case 154:
+/* rule 154 can match eol */
 YY_RULE_SETUP
-#line 418 "../SqlLexer.lpp"
+#line 421 "../SqlLexer.lpp"
 {
   /* Scan up to a quote. */
   yylval->string_value_->append(yytext, yyleng);
 }
 	YY_BREAK
-case 153:
-/* rule 153 can match eol */
+case 155:
+/* rule 155 can match eol */
 YY_RULE_SETUP
-#line 423 "../SqlLexer.lpp"
+#line 426 "../SqlLexer.lpp"
 {
   /* Scan up to a quote or escape sequence. */
   yylval->string_value_->append(yytext, yyleng);
 }
 	YY_BREAK
-case 154:
-/* rule 154 can match eol */
+case 156:
+/* rule 156 can match eol */
 YY_RULE_SETUP
-#line 428 "../SqlLexer.lpp"
+#line 431 "../SqlLexer.lpp"
 {
   /* Scan up to a quote. */
   yylval->string_value_->append(yytext, yyleng);
 }
 	YY_BREAK
 
-case 155:
+case 157:
 YY_RULE_SETUP
-#line 434 "../SqlLexer.lpp"
+#line 437 "../SqlLexer.lpp"
 {
     yylval->string_value_ = new quickstep::ParseString(
         yylloc->first_line, yylloc->first_column, std::string(yytext, yyleng));
     return TOKEN_NAME;
   }
 	YY_BREAK
-case 156:
+case 158:
 YY_RULE_SETUP
-#line 440 "../SqlLexer.lpp"
+#line 443 "../SqlLexer.lpp"
 {
     yylval->numeric_literal_value_ = new quickstep::NumericParseLiteralValue(
         yylloc->first_line, yylloc->first_column, yytext);
     return TOKEN_UNSIGNED_NUMVAL;
   }
 	YY_BREAK
-case 157:
-YY_RULE_SETUP
-#line 446 "../SqlLexer.lpp"
-/* comment */
-	YY_BREAK
-case 158:
-/* rule 158 can match eol */
-YY_RULE_SETUP
-#line 448 "../SqlLexer.lpp"
-{ yycolumn = 0; }
-	YY_BREAK
 case 159:
 YY_RULE_SETUP
-#line 450 "../SqlLexer.lpp"
+#line 449 "../SqlLexer.lpp"
+/* comment */
+	YY_BREAK
+case 160:
+/* rule 160 can match eol */
+YY_RULE_SETUP
+#line 451 "../SqlLexer.lpp"
+{ yycolumn = 0; }
+	YY_BREAK
+case 161:
+YY_RULE_SETUP
+#line 453 "../SqlLexer.lpp"
 ; /* ignore white space */
 	YY_BREAK
 /* CONDITION_SQL */
 case YY_STATE_EOF(INITIAL):
 case YY_STATE_EOF(CONDITION_COMMAND):
 case YY_STATE_EOF(CONDITION_SQL):
-#line 454 "../SqlLexer.lpp"
+#line 457 "../SqlLexer.lpp"
 {
   /* All conditions except for mutli-state string extracting conditions. */
   BEGIN(INITIAL);
   return TOKEN_EOF;
 }
 	YY_BREAK
-case 160:
+case 162:
 YY_RULE_SETUP
-#line 460 "../SqlLexer.lpp"
+#line 463 "../SqlLexer.lpp"
 {
   BEGIN(INITIAL);
   quickstep_yyerror(NULL, yyscanner, NULL, "illegal character");
   return TOKEN_LEX_ERROR;
 }
 	YY_BREAK
-case 161:
+case 163:
 YY_RULE_SETUP
-#line 466 "../SqlLexer.lpp"
+#line 469 "../SqlLexer.lpp"
 YY_FATAL_ERROR( "flex scanner jammed" );
 	YY_BREAK
-#line 2460 "SqlLexer_gen.cpp"
+#line 2429 "SqlLexer_gen.cpp"
 
 	case YY_END_OF_BUFFER:
 		{
@@ -2602,7 +2570,7 @@
     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
 	char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
 	char *source = yyg->yytext_ptr;
-	int number_to_move, i;
+	yy_size_t number_to_move, i;
 	int ret_val;
 
 	if ( yyg->yy_c_buf_p > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] )
@@ -2631,7 +2599,7 @@
 	/* Try to read more data. */
 
 	/* First move last chars to start of buffer. */
-	number_to_move = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr - 1);
+	number_to_move = (yy_size_t) (yyg->yy_c_buf_p - yyg->yytext_ptr) - 1;
 
 	for ( i = 0; i < number_to_move; ++i )
 		*(dest++) = *(source++);
@@ -2644,7 +2612,7 @@
 
 	else
 		{
-			int num_to_read =
+			yy_size_t num_to_read =
 			YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
 
 		while ( num_to_read <= 0 )
@@ -2658,7 +2626,7 @@
 
 			if ( b->yy_is_our_buffer )
 				{
-				int new_size = b->yy_buf_size * 2;
+				yy_size_t new_size = b->yy_buf_size * 2;
 
 				if ( new_size <= 0 )
 					b->yy_buf_size += b->yy_buf_size / 8;
@@ -2667,11 +2635,11 @@
 
 				b->yy_ch_buf = (char *)
 					/* Include room in for 2 EOB chars. */
-					quickstep_yyrealloc((void *) b->yy_ch_buf,(yy_size_t) (b->yy_buf_size + 2) ,yyscanner );
+					quickstep_yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ,yyscanner );
 				}
 			else
 				/* Can't grow it, we don't own it. */
-				b->yy_ch_buf = NULL;
+				b->yy_ch_buf = 0;
 
 			if ( ! b->yy_ch_buf )
 				YY_FATAL_ERROR(
@@ -2713,10 +2681,10 @@
 	else
 		ret_val = EOB_ACT_CONTINUE_SCAN;
 
-	if ((yyg->yy_n_chars + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
+	if ((yy_size_t) (yyg->yy_n_chars + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
 		/* Extend the array by 50%, plus the number we really need. */
-		int new_size = yyg->yy_n_chars + number_to_move + (yyg->yy_n_chars >> 1);
-		YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) quickstep_yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,(yy_size_t) new_size ,yyscanner );
+		yy_size_t new_size = yyg->yy_n_chars + number_to_move + (yyg->yy_n_chars >> 1);
+		YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) quickstep_yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ,yyscanner );
 		if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
 			YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
 	}
@@ -2751,10 +2719,10 @@
 		while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
 			{
 			yy_current_state = (int) yy_def[yy_current_state];
-			if ( yy_current_state >= 593 )
-				yy_c = yy_meta[yy_c];
+			if ( yy_current_state >= 599 )
+				yy_c = yy_meta[(unsigned int) yy_c];
 			}
-		yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
+		yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
 		}
 
 	return yy_current_state;
@@ -2780,11 +2748,11 @@
 	while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
 		{
 		yy_current_state = (int) yy_def[yy_current_state];
-		if ( yy_current_state >= 593 )
-			yy_c = yy_meta[yy_c];
+		if ( yy_current_state >= 599 )
+			yy_c = yy_meta[(unsigned int) yy_c];
 		}
-	yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
-	yy_is_jam = (yy_current_state == 592);
+	yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
+	yy_is_jam = (yy_current_state == 598);
 
 	(void)yyg;
 	return yy_is_jam ? 0 : yy_current_state;
@@ -2819,7 +2787,7 @@
 
 		else
 			{ /* need more input */
-			int offset = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr);
+			yy_size_t offset = yyg->yy_c_buf_p - yyg->yytext_ptr;
 			++yyg->yy_c_buf_p;
 
 			switch ( yy_get_next_buffer( yyscanner ) )
@@ -2843,7 +2811,7 @@
 				case EOB_ACT_END_OF_FILE:
 					{
 					if ( quickstep_yywrap(yyscanner ) )
-						return 0;
+						return EOF;
 
 					if ( ! yyg->yy_did_buffer_switch_on_eof )
 						YY_NEW_FILE;
@@ -2866,7 +2834,7 @@
 	yyg->yy_hold_char = *++yyg->yy_c_buf_p;
 
 	if ( c == '\n' )
-		
+		   
     do{ yylineno++;
         yycolumn=0;
     }while(0)
@@ -2954,12 +2922,12 @@
 	if ( ! b )
 		YY_FATAL_ERROR( "out of dynamic memory in quickstep_yy_create_buffer()" );
 
-	b->yy_buf_size = size;
+	b->yy_buf_size = (yy_size_t)size;
 
 	/* yy_ch_buf has to be 2 characters longer than the size given because
 	 * we need to put in 2 end-of-buffer characters.
 	 */
-	b->yy_ch_buf = (char *) quickstep_yyalloc((yy_size_t) (b->yy_buf_size + 2) ,yyscanner );
+	b->yy_ch_buf = (char *) quickstep_yyalloc(b->yy_buf_size + 2 ,yyscanner );
 	if ( ! b->yy_ch_buf )
 		YY_FATAL_ERROR( "out of dynamic memory in quickstep_yy_create_buffer()" );
 
@@ -3115,15 +3083,15 @@
 		 * scanner will even need a stack. We use 2 instead of 1 to avoid an
 		 * immediate realloc on the next call.
          */
-      num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */
+		num_to_alloc = 1; // After all that talk, this was set to 1 anyways...
 		yyg->yy_buffer_stack = (struct yy_buffer_state**)quickstep_yyalloc
 								(num_to_alloc * sizeof(struct yy_buffer_state*)
 								, yyscanner);
 		if ( ! yyg->yy_buffer_stack )
 			YY_FATAL_ERROR( "out of dynamic memory in quickstep_yyensure_buffer_stack()" );
-
+								  
 		memset(yyg->yy_buffer_stack, 0, num_to_alloc * sizeof(struct yy_buffer_state*));
-
+				
 		yyg->yy_buffer_stack_max = num_to_alloc;
 		yyg->yy_buffer_stack_top = 0;
 		return;
@@ -3152,7 +3120,7 @@
  * @param base the character buffer
  * @param size the size in bytes of the character buffer
  * @param yyscanner The scanner object.
- * @return the newly allocated buffer state object.
+ * @return the newly allocated buffer state object. 
  */
 YY_BUFFER_STATE quickstep_yy_scan_buffer  (char * base, yy_size_t  size , yyscan_t yyscanner)
 {
@@ -3162,16 +3130,16 @@
 	     base[size-2] != YY_END_OF_BUFFER_CHAR ||
 	     base[size-1] != YY_END_OF_BUFFER_CHAR )
 		/* They forgot to leave room for the EOB's. */
-		return NULL;
+		return 0;
 
 	b = (YY_BUFFER_STATE) quickstep_yyalloc(sizeof( struct yy_buffer_state ) ,yyscanner );
 	if ( ! b )
 		YY_FATAL_ERROR( "out of dynamic memory in quickstep_yy_scan_buffer()" );
 
-	b->yy_buf_size = (int) (size - 2);	/* "- 2" to take care of EOB's */
+	b->yy_buf_size = size - 2;	/* "- 2" to take care of EOB's */
 	b->yy_buf_pos = b->yy_ch_buf = base;
 	b->yy_is_our_buffer = 0;
-	b->yy_input_file = NULL;
+	b->yy_input_file = 0;
 	b->yy_n_chars = b->yy_buf_size;
 	b->yy_is_interactive = 0;
 	b->yy_at_bol = 1;
@@ -3191,10 +3159,10 @@
  * @note If you want to scan bytes that may contain NUL values, then use
  *       quickstep_yy_scan_bytes() instead.
  */
-YY_BUFFER_STATE quickstep_yy_scan_string (const char * yystr , yyscan_t yyscanner)
+YY_BUFFER_STATE quickstep_yy_scan_string (yyconst char * yystr , yyscan_t yyscanner)
 {
     
-	return quickstep_yy_scan_bytes(yystr,(int) strlen(yystr) ,yyscanner);
+	return quickstep_yy_scan_bytes(yystr,strlen(yystr) ,yyscanner);
 }
 
 /** Setup the input buffer state to scan the given bytes. The next call to quickstep_yylex() will
@@ -3204,15 +3172,15 @@
  * @param yyscanner The scanner object.
  * @return the newly allocated buffer state object.
  */
-YY_BUFFER_STATE quickstep_yy_scan_bytes  (const char * yybytes, int  _yybytes_len , yyscan_t yyscanner)
+YY_BUFFER_STATE quickstep_yy_scan_bytes  (yyconst char * yybytes, yy_size_t  _yybytes_len , yyscan_t yyscanner)
 {
 	YY_BUFFER_STATE b;
 	char *buf;
 	yy_size_t n;
-	int i;
+	yy_size_t i;
     
 	/* Get memory for full buffer, including space for trailing EOB's. */
-	n = (yy_size_t) (_yybytes_len + 2);
+	n = _yybytes_len + 2;
 	buf = (char *) quickstep_yyalloc(n ,yyscanner );
 	if ( ! buf )
 		YY_FATAL_ERROR( "out of dynamic memory in quickstep_yy_scan_bytes()" );
@@ -3238,7 +3206,7 @@
 #define YY_EXIT_FAILURE 2
 #endif
 
-static void yynoreturn yy_fatal_error (const char* msg , yyscan_t yyscanner)
+static void yy_fatal_error (yyconst char* msg , yyscan_t yyscanner)
 {
 	struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
 	(void)yyg;
@@ -3280,7 +3248,7 @@
 int quickstep_yyget_lineno  (yyscan_t yyscanner)
 {
     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
-
+    
         if (! YY_CURRENT_BUFFER)
             return 0;
     
@@ -3293,7 +3261,7 @@
 int quickstep_yyget_column  (yyscan_t yyscanner)
 {
     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
-
+    
         if (! YY_CURRENT_BUFFER)
             return 0;
     
@@ -3321,7 +3289,7 @@
 /** Get the length of the current token.
  * @param yyscanner The scanner object.
  */
-int quickstep_yyget_leng  (yyscan_t yyscanner)
+yy_size_t quickstep_yyget_leng  (yyscan_t yyscanner)
 {
     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
     return yyleng;
@@ -3439,7 +3407,9 @@
  * the ONLY reentrant function that doesn't take the scanner as the last argument.
  * That's why we explicitly handle the declaration, instead of using our macros.
  */
+
 int quickstep_yylex_init(yyscan_t* ptr_yy_globals)
+
 {
     if (ptr_yy_globals == NULL){
         errno = EINVAL;
@@ -3466,7 +3436,9 @@
  * The user defined value in the first argument will be available to quickstep_yyalloc in
  * the yyextra field.
  */
+
 int quickstep_yylex_init_extra(YY_EXTRA_TYPE yy_user_defined,yyscan_t* ptr_yy_globals )
+
 {
     struct yyguts_t dummy_yyguts;
 
@@ -3476,20 +3448,20 @@
         errno = EINVAL;
         return 1;
     }
-
+	
     *ptr_yy_globals = (yyscan_t) quickstep_yyalloc ( sizeof( struct yyguts_t ), &dummy_yyguts );
-
+	
     if (*ptr_yy_globals == NULL){
         errno = ENOMEM;
         return 1;
     }
-
+    
     /* By setting to 0xAA, we expose bugs in
     yy_init_globals. Leave at 0x00 for releases. */
     memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
-
+    
     quickstep_yyset_extra (yy_user_defined, *ptr_yy_globals);
-
+    
     return yy_init_globals ( *ptr_yy_globals );
 }
 
@@ -3500,10 +3472,10 @@
      * This function is called from quickstep_yylex_destroy(), so don't allocate here.
      */
 
-    yyg->yy_buffer_stack = NULL;
+    yyg->yy_buffer_stack = 0;
     yyg->yy_buffer_stack_top = 0;
     yyg->yy_buffer_stack_max = 0;
-    yyg->yy_c_buf_p = NULL;
+    yyg->yy_c_buf_p = (char *) 0;
     yyg->yy_init = 0;
     yyg->yy_start = 0;
 
@@ -3516,8 +3488,8 @@
     yyin = stdin;
     yyout = stdout;
 #else
-    yyin = NULL;
-    yyout = NULL;
+    yyin = (FILE *) 0;
+    yyout = (FILE *) 0;
 #endif
 
     /* For future reference: Set errno on error, since we are called by
@@ -3561,7 +3533,7 @@
  */
 
 #ifndef yytext_ptr
-static void yy_flex_strncpy (char* s1, const char * s2, int n , yyscan_t yyscanner)
+static void yy_flex_strncpy (char* s1, yyconst char * s2, int n , yyscan_t yyscanner)
 {
 	struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
 	(void)yyg;
@@ -3573,7 +3545,7 @@
 #endif
 
 #ifdef YY_NEED_STRLEN
-static int yy_flex_strlen (const char * s , yyscan_t yyscanner)
+static int yy_flex_strlen (yyconst char * s , yyscan_t yyscanner)
 {
 	int n;
 	for ( n = 0; s[n]; ++n )
@@ -3587,7 +3559,7 @@
 {
 	struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
 	(void)yyg;
-	return malloc(size);
+	return (void *) malloc( size );
 }
 
 void *quickstep_yyrealloc  (void * ptr, yy_size_t  size , yyscan_t yyscanner)
@@ -3602,7 +3574,7 @@
 	 * any pointer type to void*, and deal with argument conversions
 	 * as though doing an assignment.
 	 */
-	return realloc(ptr, size);
+	return (void *) realloc( (char *) ptr, size );
 }
 
 void quickstep_yyfree (void * ptr , yyscan_t yyscanner)
@@ -3614,6 +3586,7 @@
 
 #define YYTABLES_NAME "yytables"
 
-#line 466 "../SqlLexer.lpp"
+#line 469 "../SqlLexer.lpp"
+
 
 
diff --git a/parser/preprocessed/SqlLexer_gen.hpp b/parser/preprocessed/SqlLexer_gen.hpp
index 1997e75..f8fc00b 100644
--- a/parser/preprocessed/SqlLexer_gen.hpp
+++ b/parser/preprocessed/SqlLexer_gen.hpp
@@ -2,9 +2,9 @@
 #define quickstep_yyHEADER_H 1
 #define quickstep_yyIN_HEADER 1
 
-#line 5 "SqlLexer_gen.hpp"
+#line 6 "SqlLexer_gen.hpp"
 
-#line 7 "SqlLexer_gen.hpp"
+#line 8 "SqlLexer_gen.hpp"
 
 #define  YY_INT_ALIGNED short int
 
@@ -13,89 +13,11 @@
 #define FLEX_SCANNER
 #define YY_FLEX_MAJOR_VERSION 2
 #define YY_FLEX_MINOR_VERSION 6
-#define YY_FLEX_SUBMINOR_VERSION 3
+#define YY_FLEX_SUBMINOR_VERSION 0
 #if YY_FLEX_SUBMINOR_VERSION > 0
 #define FLEX_BETA
 #endif
 
-    #define yy_create_buffer quickstep_yy_create_buffer
-
-    #define yy_delete_buffer quickstep_yy_delete_buffer
-
-    #define yy_scan_buffer quickstep_yy_scan_buffer
-
-    #define yy_scan_string quickstep_yy_scan_string
-
-    #define yy_scan_bytes quickstep_yy_scan_bytes
-
-    #define yy_init_buffer quickstep_yy_init_buffer
-
-    #define yy_flush_buffer quickstep_yy_flush_buffer
-
-    #define yy_load_buffer_state quickstep_yy_load_buffer_state
-
-    #define yy_switch_to_buffer quickstep_yy_switch_to_buffer
-
-    #define yypush_buffer_state quickstep_yypush_buffer_state
-
-    #define yypop_buffer_state quickstep_yypop_buffer_state
-
-    #define yyensure_buffer_stack quickstep_yyensure_buffer_stack
-
-    #define yylex quickstep_yylex
-
-    #define yyrestart quickstep_yyrestart
-
-    #define yylex_init quickstep_yylex_init
-
-    #define yylex_init_extra quickstep_yylex_init_extra
-
-    #define yylex_destroy quickstep_yylex_destroy
-
-    #define yyget_debug quickstep_yyget_debug
-
-    #define yyset_debug quickstep_yyset_debug
-
-    #define yyget_extra quickstep_yyget_extra
-
-    #define yyset_extra quickstep_yyset_extra
-
-    #define yyget_in quickstep_yyget_in
-
-    #define yyset_in quickstep_yyset_in
-
-    #define yyget_out quickstep_yyget_out
-
-    #define yyset_out quickstep_yyset_out
-
-    #define yyget_leng quickstep_yyget_leng
-
-    #define yyget_text quickstep_yyget_text
-
-    #define yyget_lineno quickstep_yyget_lineno
-
-    #define yyset_lineno quickstep_yyset_lineno
-
-        #define yyget_column quickstep_yyget_column
-
-        #define yyset_column quickstep_yyset_column
-
-    #define yywrap quickstep_yywrap
-
-    #define yyget_lval quickstep_yyget_lval
-
-    #define yyset_lval quickstep_yyset_lval
-
-    #define yyget_lloc quickstep_yyget_lloc
-
-    #define yyset_lloc quickstep_yyset_lloc
-
-    #define yyalloc quickstep_yyalloc
-
-    #define yyrealloc quickstep_yyrealloc
-
-    #define yyfree quickstep_yyfree
-
 /* First, we deal with  platform-specific or compiler-specific issues. */
 
 /* begin standard C headers. */
@@ -170,13 +92,25 @@
 
 #endif /* ! FLEXINT_H */
 
-/* TODO: this is always defined, so inline it */
-#define yyconst const
+#ifdef __cplusplus
 
-#if defined(__GNUC__) && __GNUC__ >= 3
-#define yynoreturn __attribute__((__noreturn__))
+/* The "const" storage-class-modifier is valid. */
+#define YY_USE_CONST
+
+#else	/* ! __cplusplus */
+
+/* C99 requires __STDC__ to be defined as 1. */
+#if defined (__STDC__)
+
+#define YY_USE_CONST
+
+#endif	/* defined (__STDC__) */
+#endif	/* ! __cplusplus */
+
+#ifdef YY_USE_CONST
+#define yyconst const
 #else
-#define yynoreturn
+#define yyconst
 #endif
 
 /* An opaque pointer. */
@@ -231,12 +165,12 @@
 	/* Size of input buffer in bytes, not including room for EOB
 	 * characters.
 	 */
-	int yy_buf_size;
+	yy_size_t yy_buf_size;
 
 	/* Number of characters read into yy_ch_buf, not including EOB
 	 * characters.
 	 */
-	int yy_n_chars;
+	yy_size_t yy_n_chars;
 
 	/* Whether we "own" the buffer - i.e., we know we created it,
 	 * and can realloc() it to grow it, and should free() it to
@@ -259,7 +193,7 @@
 
     int yy_bs_lineno; /**< The line count. */
     int yy_bs_column; /**< The column count. */
-
+    
 	/* Whether to try to fill the input buffer when we reach the
 	 * end of it.
 	 */
@@ -270,21 +204,21 @@
 	};
 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
 
-void quickstep_yyrestart ( FILE *input_file , yyscan_t yyscanner );
-void quickstep_yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer , yyscan_t yyscanner );
-YY_BUFFER_STATE quickstep_yy_create_buffer ( FILE *file, int size , yyscan_t yyscanner );
-void quickstep_yy_delete_buffer ( YY_BUFFER_STATE b , yyscan_t yyscanner );
-void quickstep_yy_flush_buffer ( YY_BUFFER_STATE b , yyscan_t yyscanner );
-void quickstep_yypush_buffer_state ( YY_BUFFER_STATE new_buffer , yyscan_t yyscanner );
-void quickstep_yypop_buffer_state ( yyscan_t yyscanner );
+void quickstep_yyrestart (FILE *input_file ,yyscan_t yyscanner );
+void quickstep_yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner );
+YY_BUFFER_STATE quickstep_yy_create_buffer (FILE *file,int size ,yyscan_t yyscanner );
+void quickstep_yy_delete_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
+void quickstep_yy_flush_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
+void quickstep_yypush_buffer_state (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner );
+void quickstep_yypop_buffer_state (yyscan_t yyscanner );
 
-YY_BUFFER_STATE quickstep_yy_scan_buffer ( char *base, yy_size_t size , yyscan_t yyscanner );
-YY_BUFFER_STATE quickstep_yy_scan_string ( const char *yy_str , yyscan_t yyscanner );
-YY_BUFFER_STATE quickstep_yy_scan_bytes ( const char *bytes, int len , yyscan_t yyscanner );
+YY_BUFFER_STATE quickstep_yy_scan_buffer (char *base,yy_size_t size ,yyscan_t yyscanner );
+YY_BUFFER_STATE quickstep_yy_scan_string (yyconst char *yy_str ,yyscan_t yyscanner );
+YY_BUFFER_STATE quickstep_yy_scan_bytes (yyconst char *bytes,yy_size_t len ,yyscan_t yyscanner );
 
-void *quickstep_yyalloc ( yy_size_t , yyscan_t yyscanner );
-void *quickstep_yyrealloc ( void *, yy_size_t , yyscan_t yyscanner );
-void quickstep_yyfree ( void * , yyscan_t yyscanner );
+void *quickstep_yyalloc (yy_size_t ,yyscan_t yyscanner );
+void *quickstep_yyrealloc (void *,yy_size_t ,yyscan_t yyscanner );
+void quickstep_yyfree (void * ,yyscan_t yyscanner );
 
 /* Begin user sect3 */
 
@@ -317,48 +251,48 @@
 
 int quickstep_yylex_init (yyscan_t* scanner);
 
-int quickstep_yylex_init_extra ( YY_EXTRA_TYPE user_defined, yyscan_t* scanner);
+int quickstep_yylex_init_extra (YY_EXTRA_TYPE user_defined,yyscan_t* scanner);
 
 /* Accessor methods to globals.
    These are made visible to non-reentrant scanners for convenience. */
 
-int quickstep_yylex_destroy ( yyscan_t yyscanner );
+int quickstep_yylex_destroy (yyscan_t yyscanner );
 
-int quickstep_yyget_debug ( yyscan_t yyscanner );
+int quickstep_yyget_debug (yyscan_t yyscanner );
 
-void quickstep_yyset_debug ( int debug_flag , yyscan_t yyscanner );
+void quickstep_yyset_debug (int debug_flag ,yyscan_t yyscanner );
 
-YY_EXTRA_TYPE quickstep_yyget_extra ( yyscan_t yyscanner );
+YY_EXTRA_TYPE quickstep_yyget_extra (yyscan_t yyscanner );
 
-void quickstep_yyset_extra ( YY_EXTRA_TYPE user_defined , yyscan_t yyscanner );
+void quickstep_yyset_extra (YY_EXTRA_TYPE user_defined ,yyscan_t yyscanner );
 
-FILE *quickstep_yyget_in ( yyscan_t yyscanner );
+FILE *quickstep_yyget_in (yyscan_t yyscanner );
 
-void quickstep_yyset_in  ( FILE * _in_str , yyscan_t yyscanner );
+void quickstep_yyset_in  (FILE * _in_str ,yyscan_t yyscanner );
 
-FILE *quickstep_yyget_out ( yyscan_t yyscanner );
+FILE *quickstep_yyget_out (yyscan_t yyscanner );
 
-void quickstep_yyset_out  ( FILE * _out_str , yyscan_t yyscanner );
+void quickstep_yyset_out  (FILE * _out_str ,yyscan_t yyscanner );
 
-			int quickstep_yyget_leng ( yyscan_t yyscanner );
+yy_size_t quickstep_yyget_leng (yyscan_t yyscanner );
 
-char *quickstep_yyget_text ( yyscan_t yyscanner );
+char *quickstep_yyget_text (yyscan_t yyscanner );
 
-int quickstep_yyget_lineno ( yyscan_t yyscanner );
+int quickstep_yyget_lineno (yyscan_t yyscanner );
 
-void quickstep_yyset_lineno ( int _line_number , yyscan_t yyscanner );
+void quickstep_yyset_lineno (int _line_number ,yyscan_t yyscanner );
 
-int quickstep_yyget_column  ( yyscan_t yyscanner );
+int quickstep_yyget_column  (yyscan_t yyscanner );
 
-void quickstep_yyset_column ( int _column_no , yyscan_t yyscanner );
+void quickstep_yyset_column (int _column_no ,yyscan_t yyscanner );
 
-YYSTYPE * quickstep_yyget_lval ( yyscan_t yyscanner );
+YYSTYPE * quickstep_yyget_lval (yyscan_t yyscanner );
 
-void quickstep_yyset_lval ( YYSTYPE * yylval_param , yyscan_t yyscanner );
+void quickstep_yyset_lval (YYSTYPE * yylval_param ,yyscan_t yyscanner );
 
-       YYLTYPE *quickstep_yyget_lloc ( yyscan_t yyscanner );
+       YYLTYPE *quickstep_yyget_lloc (yyscan_t yyscanner );
     
-        void quickstep_yyset_lloc ( YYLTYPE * yylloc_param , yyscan_t yyscanner );
+        void quickstep_yyset_lloc (YYLTYPE * yylloc_param ,yyscan_t yyscanner );
     
 /* Macros after this point can all be overridden by user definitions in
  * section 1.
@@ -366,18 +300,18 @@
 
 #ifndef YY_SKIP_YYWRAP
 #ifdef __cplusplus
-extern "C" int quickstep_yywrap ( yyscan_t yyscanner );
+extern "C" int quickstep_yywrap (yyscan_t yyscanner );
 #else
-extern int quickstep_yywrap ( yyscan_t yyscanner );
+extern int quickstep_yywrap (yyscan_t yyscanner );
 #endif
 #endif
 
 #ifndef yytext_ptr
-static void yy_flex_strncpy ( char *, const char *, int , yyscan_t yyscanner);
+static void yy_flex_strncpy (char *,yyconst char *,int ,yyscan_t yyscanner);
 #endif
 
 #ifdef YY_NEED_STRLEN
-static int yy_flex_strlen ( const char * , yyscan_t yyscanner);
+static int yy_flex_strlen (yyconst char * ,yyscan_t yyscanner);
 #endif
 
 #ifndef YY_NO_INPUT
@@ -406,7 +340,7 @@
 #define YY_DECL_IS_OURS 1
 
 extern int quickstep_yylex \
-               (YYSTYPE * yylval_param, YYLTYPE * yylloc_param , yyscan_t yyscanner);
+               (YYSTYPE * yylval_param,YYLTYPE * yylloc_param ,yyscan_t yyscanner);
 
 #define YY_DECL int quickstep_yylex \
                (YYSTYPE * yylval_param, YYLTYPE * yylloc_param , yyscan_t yyscanner)
@@ -426,9 +360,9 @@
 #undef YY_DECL
 #endif
 
-#line 466 "../SqlLexer.lpp"
+#line 469 "../SqlLexer.lpp"
 
 
-#line 432 "SqlLexer_gen.hpp"
+#line 367 "SqlLexer_gen.hpp"
 #undef quickstep_yyIN_HEADER
 #endif /* quickstep_yyHEADER_H */
diff --git a/parser/preprocessed/SqlParser_gen.cpp b/parser/preprocessed/SqlParser_gen.cpp
index 23cbf1b..871053f 100644
--- a/parser/preprocessed/SqlParser_gen.cpp
+++ b/parser/preprocessed/SqlParser_gen.cpp
@@ -126,6 +126,7 @@
 #include "parser/ParseSample.hpp"
 #include "parser/ParseSelect.hpp"
 #include "parser/ParseSelectionClause.hpp"
+#include "parser/ParseSetOperation.hpp"
 #include "parser/ParseSimpleTableReference.hpp"
 #include "parser/ParseStatement.hpp"
 #include "parser/ParseString.hpp"
@@ -152,7 +153,7 @@
 // Needed for Bison 2.6 and higher, which do not automatically provide this typedef.
 typedef void* yyscan_t;
 
-#line 156 "SqlParser_gen.cpp" /* yacc.c:339  */
+#line 157 "SqlParser_gen.cpp" /* yacc.c:339  */
 
 # ifndef YY_NULLPTR
 #  if defined __cplusplus && 201103L <= __cplusplus
@@ -207,117 +208,119 @@
     TOKEN_IS = 275,
     UNARY_PLUS = 276,
     UNARY_MINUS = 277,
-    TOKEN_ADD = 278,
-    TOKEN_ALL = 279,
-    TOKEN_ALTER = 280,
-    TOKEN_AS = 281,
-    TOKEN_ASC = 282,
-    TOKEN_BIGINT = 283,
-    TOKEN_BIT = 284,
-    TOKEN_BITWEAVING = 285,
-    TOKEN_BLOCKPROPERTIES = 286,
-    TOKEN_BLOCKSAMPLE = 287,
-    TOKEN_BLOOM_FILTER = 288,
-    TOKEN_CSB_TREE = 289,
-    TOKEN_BY = 290,
-    TOKEN_CASE = 291,
-    TOKEN_CHARACTER = 292,
-    TOKEN_CHECK = 293,
-    TOKEN_COLUMN = 294,
-    TOKEN_CONSTRAINT = 295,
-    TOKEN_COPY = 296,
-    TOKEN_CREATE = 297,
-    TOKEN_CURRENT = 298,
-    TOKEN_DATE = 299,
-    TOKEN_DATETIME = 300,
-    TOKEN_DAY = 301,
-    TOKEN_DECIMAL = 302,
-    TOKEN_DEFAULT = 303,
-    TOKEN_DELETE = 304,
-    TOKEN_DELIMITER = 305,
-    TOKEN_DESC = 306,
-    TOKEN_DISTINCT = 307,
-    TOKEN_DOUBLE = 308,
-    TOKEN_DROP = 309,
-    TOKEN_ELSE = 310,
-    TOKEN_END = 311,
-    TOKEN_ESCAPE_STRINGS = 312,
-    TOKEN_EXISTS = 313,
-    TOKEN_EXTRACT = 314,
-    TOKEN_FALSE = 315,
-    TOKEN_FIRST = 316,
-    TOKEN_FLOAT = 317,
-    TOKEN_FOLLOWING = 318,
-    TOKEN_FOR = 319,
-    TOKEN_FOREIGN = 320,
-    TOKEN_FROM = 321,
-    TOKEN_FULL = 322,
-    TOKEN_GROUP = 323,
-    TOKEN_HASH = 324,
-    TOKEN_HAVING = 325,
-    TOKEN_HOUR = 326,
-    TOKEN_IN = 327,
-    TOKEN_INDEX = 328,
-    TOKEN_INNER = 329,
-    TOKEN_INSERT = 330,
-    TOKEN_INTEGER = 331,
-    TOKEN_INTERVAL = 332,
-    TOKEN_INTO = 333,
-    TOKEN_JOIN = 334,
-    TOKEN_KEY = 335,
-    TOKEN_LAST = 336,
-    TOKEN_LEFT = 337,
-    TOKEN_LIMIT = 338,
-    TOKEN_LONG = 339,
-    TOKEN_MINUTE = 340,
-    TOKEN_MONTH = 341,
-    TOKEN_NULL = 342,
-    TOKEN_NULLS = 343,
-    TOKEN_OFF = 344,
-    TOKEN_ON = 345,
-    TOKEN_ORDER = 346,
-    TOKEN_OUTER = 347,
-    TOKEN_OVER = 348,
-    TOKEN_PARTITION = 349,
-    TOKEN_PARTITIONS = 350,
-    TOKEN_PERCENT = 351,
-    TOKEN_PRECEDING = 352,
-    TOKEN_PRIMARY = 353,
-    TOKEN_PRIORITY = 354,
-    TOKEN_QUIT = 355,
-    TOKEN_RANGE = 356,
-    TOKEN_REAL = 357,
-    TOKEN_REFERENCES = 358,
-    TOKEN_RIGHT = 359,
-    TOKEN_ROW = 360,
-    TOKEN_ROW_DELIMITER = 361,
-    TOKEN_ROWS = 362,
-    TOKEN_SECOND = 363,
-    TOKEN_SELECT = 364,
-    TOKEN_SET = 365,
-    TOKEN_SMA = 366,
-    TOKEN_SMALLINT = 367,
-    TOKEN_SUBSTRING = 368,
-    TOKEN_TABLE = 369,
-    TOKEN_THEN = 370,
-    TOKEN_TIME = 371,
-    TOKEN_TIMESTAMP = 372,
-    TOKEN_TRUE = 373,
-    TOKEN_TUPLESAMPLE = 374,
-    TOKEN_UNBOUNDED = 375,
-    TOKEN_UNIQUE = 376,
-    TOKEN_UPDATE = 377,
-    TOKEN_USING = 378,
-    TOKEN_VALUES = 379,
-    TOKEN_VARCHAR = 380,
-    TOKEN_WHEN = 381,
-    TOKEN_WHERE = 382,
-    TOKEN_WINDOW = 383,
-    TOKEN_WITH = 384,
-    TOKEN_YEAR = 385,
-    TOKEN_YEARMONTH = 386,
-    TOKEN_EOF = 387,
-    TOKEN_LEX_ERROR = 388
+    TOKEN_ALL = 278,
+    TOKEN_UNION = 279,
+    TOKEN_INTERSECT = 280,
+    TOKEN_ADD = 281,
+    TOKEN_ALTER = 282,
+    TOKEN_AS = 283,
+    TOKEN_ASC = 284,
+    TOKEN_BIGINT = 285,
+    TOKEN_BIT = 286,
+    TOKEN_BITWEAVING = 287,
+    TOKEN_BLOCKPROPERTIES = 288,
+    TOKEN_BLOCKSAMPLE = 289,
+    TOKEN_BLOOM_FILTER = 290,
+    TOKEN_CSB_TREE = 291,
+    TOKEN_BY = 292,
+    TOKEN_CASE = 293,
+    TOKEN_CHARACTER = 294,
+    TOKEN_CHECK = 295,
+    TOKEN_COLUMN = 296,
+    TOKEN_CONSTRAINT = 297,
+    TOKEN_COPY = 298,
+    TOKEN_CREATE = 299,
+    TOKEN_CURRENT = 300,
+    TOKEN_DATE = 301,
+    TOKEN_DATETIME = 302,
+    TOKEN_DAY = 303,
+    TOKEN_DECIMAL = 304,
+    TOKEN_DEFAULT = 305,
+    TOKEN_DELETE = 306,
+    TOKEN_DELIMITER = 307,
+    TOKEN_DESC = 308,
+    TOKEN_DISTINCT = 309,
+    TOKEN_DOUBLE = 310,
+    TOKEN_DROP = 311,
+    TOKEN_ELSE = 312,
+    TOKEN_END = 313,
+    TOKEN_ESCAPE_STRINGS = 314,
+    TOKEN_EXISTS = 315,
+    TOKEN_EXTRACT = 316,
+    TOKEN_FALSE = 317,
+    TOKEN_FIRST = 318,
+    TOKEN_FLOAT = 319,
+    TOKEN_FOLLOWING = 320,
+    TOKEN_FOR = 321,
+    TOKEN_FOREIGN = 322,
+    TOKEN_FROM = 323,
+    TOKEN_FULL = 324,
+    TOKEN_GROUP = 325,
+    TOKEN_HASH = 326,
+    TOKEN_HAVING = 327,
+    TOKEN_HOUR = 328,
+    TOKEN_IN = 329,
+    TOKEN_INDEX = 330,
+    TOKEN_INNER = 331,
+    TOKEN_INSERT = 332,
+    TOKEN_INTEGER = 333,
+    TOKEN_INTERVAL = 334,
+    TOKEN_INTO = 335,
+    TOKEN_JOIN = 336,
+    TOKEN_KEY = 337,
+    TOKEN_LAST = 338,
+    TOKEN_LEFT = 339,
+    TOKEN_LIMIT = 340,
+    TOKEN_LONG = 341,
+    TOKEN_MINUTE = 342,
+    TOKEN_MONTH = 343,
+    TOKEN_NULL = 344,
+    TOKEN_NULLS = 345,
+    TOKEN_OFF = 346,
+    TOKEN_ON = 347,
+    TOKEN_ORDER = 348,
+    TOKEN_OUTER = 349,
+    TOKEN_OVER = 350,
+    TOKEN_PARTITION = 351,
+    TOKEN_PARTITIONS = 352,
+    TOKEN_PERCENT = 353,
+    TOKEN_PRECEDING = 354,
+    TOKEN_PRIMARY = 355,
+    TOKEN_PRIORITY = 356,
+    TOKEN_QUIT = 357,
+    TOKEN_RANGE = 358,
+    TOKEN_REAL = 359,
+    TOKEN_REFERENCES = 360,
+    TOKEN_RIGHT = 361,
+    TOKEN_ROW = 362,
+    TOKEN_ROW_DELIMITER = 363,
+    TOKEN_ROWS = 364,
+    TOKEN_SECOND = 365,
+    TOKEN_SELECT = 366,
+    TOKEN_SET = 367,
+    TOKEN_SMA = 368,
+    TOKEN_SMALLINT = 369,
+    TOKEN_SUBSTRING = 370,
+    TOKEN_TABLE = 371,
+    TOKEN_THEN = 372,
+    TOKEN_TIME = 373,
+    TOKEN_TIMESTAMP = 374,
+    TOKEN_TRUE = 375,
+    TOKEN_TUPLESAMPLE = 376,
+    TOKEN_UNBOUNDED = 377,
+    TOKEN_UNIQUE = 378,
+    TOKEN_UPDATE = 379,
+    TOKEN_USING = 380,
+    TOKEN_VALUES = 381,
+    TOKEN_VARCHAR = 382,
+    TOKEN_WHEN = 383,
+    TOKEN_WHERE = 384,
+    TOKEN_WINDOW = 385,
+    TOKEN_WITH = 386,
+    TOKEN_YEAR = 387,
+    TOKEN_YEARMONTH = 388,
+    TOKEN_EOF = 389,
+    TOKEN_LEX_ERROR = 390
   };
 #endif
 
@@ -326,7 +329,7 @@
 
 union YYSTYPE
 {
-#line 120 "../SqlParser.ypp" /* yacc.c:355  */
+#line 121 "../SqlParser.ypp" /* yacc.c:355  */
 
   quickstep::ParseString *string_value_;
 
@@ -358,6 +361,8 @@
   quickstep::ParseSelectionItem *selection_item_;
   quickstep::ParseSelectionList *selection_list_;
 
+  quickstep::ParseSetOperation *set_operation_;
+
   quickstep::ParseTableReference *table_reference_;
   quickstep::PtrList<quickstep::ParseTableReference> *table_reference_list_;
   quickstep::ParseTableReferenceSignature *table_reference_signature_;
@@ -385,7 +390,7 @@
   quickstep::PtrVector<quickstep::ParseString> *command_argument_list_;
 
   quickstep::ParseStatement *statement_;
-  quickstep::ParseStatementSelect *select_statement_;
+  quickstep::ParseStatementSetOperation *set_operation_statement_;
   quickstep::ParseStatementUpdate *update_statement_;
   quickstep::ParseStatementInsert *insert_statement_;
   quickstep::ParseStatementDelete *delete_statement_;
@@ -426,7 +431,7 @@
 
   quickstep::ParsePriority *opt_priority_clause_;
 
-#line 430 "SqlParser_gen.cpp" /* yacc.c:355  */
+#line 435 "SqlParser_gen.cpp" /* yacc.c:355  */
 };
 
 typedef union YYSTYPE YYSTYPE;
@@ -455,13 +460,13 @@
 #endif /* !YY_QUICKSTEP_YY_SQLPARSER_GEN_HPP_INCLUDED  */
 
 /* Copy the second part of user declarations.  */
-#line 220 "../SqlParser.ypp" /* yacc.c:358  */
+#line 223 "../SqlParser.ypp" /* yacc.c:358  */
 
 /* This header needs YYSTYPE, which is defined by the %union directive above */
 #include "SqlLexer_gen.hpp"
 void NotSupported(const YYLTYPE *location, yyscan_t yyscanner, const std::string &feature);
 
-#line 465 "SqlParser_gen.cpp" /* yacc.c:358  */
+#line 470 "SqlParser_gen.cpp" /* yacc.c:358  */
 
 #ifdef short
 # undef short
@@ -703,23 +708,23 @@
 #endif /* !YYCOPY_NEEDED */
 
 /* YYFINAL -- State number of the termination state.  */
-#define YYFINAL  47
+#define YYFINAL  49
 /* YYLAST -- Last index in YYTABLE.  */
-#define YYLAST   1346
+#define YYLAST   1207
 
 /* YYNTOKENS -- Number of terminals.  */
-#define YYNTOKENS  145
+#define YYNTOKENS  147
 /* YYNNTS -- Number of nonterminals.  */
-#define YYNNTS  107
+#define YYNNTS  109
 /* YYNRULES -- Number of rules.  */
-#define YYNRULES  289
+#define YYNRULES  293
 /* YYNSTATES -- Number of states.  */
-#define YYNSTATES  536
+#define YYNSTATES  543
 
 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
    by yylex, with out-of-bounds checking.  */
 #define YYUNDEFTOK  2
-#define YYMAXUTOK   388
+#define YYMAXUTOK   390
 
 #define YYTRANSLATE(YYX)                                                \
   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
@@ -729,11 +734,11 @@
 static const yytype_uint8 yytranslate[] =
 {
        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-     140,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     142,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,   144,     2,     2,
-     141,   142,    23,    21,   143,    22,    27,    24,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,   139,
+       2,     2,     2,     2,     2,     2,     2,   146,     2,     2,
+     143,   144,    23,    21,   145,    22,    27,    24,     2,     2,
+       2,     2,     2,     2,     2,     2,     2,     2,     2,   141,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
@@ -766,42 +771,44 @@
      100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
      110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
      120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
-     130,   131,   132,   133,   134,   135,   136,   137,   138
+     130,   131,   132,   133,   134,   135,   136,   137,   138,   139,
+     140
 };
 
 #if YYDEBUG
   /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
 static const yytype_uint16 yyrline[] =
 {
-       0,   629,   629,   633,   637,   641,   645,   648,   655,   658,
-     661,   664,   667,   670,   673,   676,   679,   682,   688,   694,
-     701,   707,   714,   723,   728,   737,   742,   747,   751,   757,
-     762,   765,   768,   773,   776,   779,   782,   785,   788,   791,
-     794,   797,   800,   812,   815,   818,   836,   856,   859,   862,
-     867,   872,   878,   884,   893,   897,   903,   906,   911,   916,
-     921,   928,   935,   939,   945,   948,   953,   956,   961,   964,
-     969,   972,   991,   994,   999,  1003,  1009,  1012,  1015,  1020,
-    1023,  1030,  1035,  1046,  1051,  1055,  1059,  1065,  1068,  1074,
-    1082,  1085,  1088,  1094,  1099,  1102,  1107,  1111,  1115,  1119,
-    1125,  1130,  1135,  1139,  1145,  1151,  1154,  1159,  1162,  1181,
-    1186,  1190,  1196,  1202,  1208,  1211,  1215,  1221,  1224,  1229,
-    1233,  1239,  1242,  1245,  1250,  1255,  1260,  1263,  1266,  1271,
-    1274,  1277,  1280,  1283,  1286,  1289,  1292,  1297,  1300,  1305,
-    1309,  1313,  1316,  1320,  1323,  1328,  1331,  1336,  1339,  1344,
-    1348,  1354,  1357,  1362,  1365,  1370,  1373,  1378,  1381,  1400,
-    1403,  1408,  1412,  1418,  1424,  1429,  1432,  1437,  1440,  1445,
-    1448,  1453,  1456,  1461,  1462,  1465,  1470,  1471,  1474,  1479,
-    1483,  1489,  1496,  1499,  1502,  1507,  1510,  1513,  1519,  1522,
-    1527,  1532,  1541,  1546,  1555,  1560,  1563,  1568,  1571,  1576,
-    1582,  1588,  1591,  1594,  1597,  1600,  1603,  1609,  1618,  1621,
-    1626,  1629,  1634,  1637,  1642,  1645,  1648,  1651,  1655,  1659,
-    1662,  1665,  1668,  1671,  1676,  1680,  1684,  1687,  1692,  1697,
-    1701,  1707,  1710,  1715,  1719,  1725,  1730,  1734,  1740,  1745,
-    1748,  1753,  1757,  1763,  1766,  1769,  1772,  1784,  1788,  1807,
-    1820,  1835,  1838,  1841,  1844,  1847,  1850,  1855,  1859,  1865,
-    1868,  1873,  1877,  1884,  1887,  1890,  1893,  1896,  1899,  1902,
-    1905,  1908,  1911,  1916,  1927,  1930,  1935,  1938,  1941,  1947,
-    1951,  1957,  1960,  1968,  1971,  1974,  1977,  1983,  1988,  1993
+       0,   639,   639,   643,   647,   651,   655,   658,   665,   668,
+     671,   674,   677,   680,   683,   686,   689,   692,   698,   704,
+     711,   717,   724,   733,   738,   747,   752,   757,   761,   767,
+     772,   775,   778,   783,   786,   789,   792,   795,   798,   801,
+     804,   807,   810,   822,   825,   828,   846,   866,   869,   872,
+     877,   882,   888,   894,   903,   907,   913,   916,   921,   926,
+     931,   938,   945,   949,   955,   958,   963,   966,   971,   974,
+     979,   982,  1001,  1004,  1009,  1013,  1019,  1022,  1025,  1030,
+    1033,  1040,  1045,  1056,  1061,  1065,  1069,  1075,  1078,  1084,
+    1092,  1095,  1098,  1104,  1109,  1112,  1117,  1121,  1125,  1129,
+    1135,  1140,  1145,  1149,  1155,  1164,  1167,  1172,  1175,  1194,
+    1199,  1203,  1209,  1215,  1224,  1229,  1237,  1243,  1249,  1252,
+    1255,  1260,  1263,  1268,  1272,  1278,  1281,  1284,  1289,  1294,
+    1299,  1302,  1305,  1310,  1313,  1316,  1319,  1322,  1325,  1328,
+    1331,  1336,  1339,  1344,  1348,  1352,  1355,  1359,  1362,  1367,
+    1370,  1375,  1378,  1383,  1387,  1393,  1396,  1401,  1404,  1409,
+    1412,  1417,  1420,  1439,  1442,  1447,  1451,  1457,  1463,  1468,
+    1471,  1476,  1479,  1484,  1487,  1492,  1495,  1500,  1501,  1504,
+    1509,  1510,  1513,  1518,  1522,  1528,  1535,  1538,  1541,  1546,
+    1549,  1552,  1558,  1561,  1566,  1571,  1580,  1585,  1594,  1599,
+    1602,  1607,  1610,  1615,  1621,  1627,  1630,  1633,  1636,  1639,
+    1642,  1648,  1657,  1660,  1665,  1668,  1673,  1676,  1681,  1684,
+    1687,  1690,  1694,  1698,  1701,  1704,  1707,  1710,  1715,  1719,
+    1723,  1726,  1731,  1736,  1740,  1746,  1749,  1754,  1758,  1764,
+    1769,  1773,  1779,  1784,  1787,  1792,  1796,  1802,  1805,  1808,
+    1811,  1823,  1827,  1846,  1859,  1874,  1877,  1880,  1883,  1886,
+    1889,  1894,  1898,  1904,  1907,  1912,  1916,  1923,  1926,  1929,
+    1932,  1935,  1938,  1941,  1944,  1947,  1950,  1955,  1966,  1969,
+    1974,  1977,  1980,  1986,  1990,  1996,  1999,  2007,  2010,  2013,
+    2016,  2022,  2027,  2032
 };
 #endif
 
@@ -816,23 +823,24 @@
   "TOKEN_EQ", "TOKEN_LT", "TOKEN_LEQ", "TOKEN_GT", "TOKEN_GEQ",
   "TOKEN_NEQ", "TOKEN_LIKE", "TOKEN_REGEXP", "TOKEN_BETWEEN", "TOKEN_IS",
   "'+'", "'-'", "'*'", "'/'", "UNARY_PLUS", "UNARY_MINUS", "'.'",
-  "TOKEN_ADD", "TOKEN_ALL", "TOKEN_ALTER", "TOKEN_AS", "TOKEN_ASC",
-  "TOKEN_BIGINT", "TOKEN_BIT", "TOKEN_BITWEAVING", "TOKEN_BLOCKPROPERTIES",
-  "TOKEN_BLOCKSAMPLE", "TOKEN_BLOOM_FILTER", "TOKEN_CSB_TREE", "TOKEN_BY",
-  "TOKEN_CASE", "TOKEN_CHARACTER", "TOKEN_CHECK", "TOKEN_COLUMN",
-  "TOKEN_CONSTRAINT", "TOKEN_COPY", "TOKEN_CREATE", "TOKEN_CURRENT",
-  "TOKEN_DATE", "TOKEN_DATETIME", "TOKEN_DAY", "TOKEN_DECIMAL",
-  "TOKEN_DEFAULT", "TOKEN_DELETE", "TOKEN_DELIMITER", "TOKEN_DESC",
-  "TOKEN_DISTINCT", "TOKEN_DOUBLE", "TOKEN_DROP", "TOKEN_ELSE",
-  "TOKEN_END", "TOKEN_ESCAPE_STRINGS", "TOKEN_EXISTS", "TOKEN_EXTRACT",
-  "TOKEN_FALSE", "TOKEN_FIRST", "TOKEN_FLOAT", "TOKEN_FOLLOWING",
-  "TOKEN_FOR", "TOKEN_FOREIGN", "TOKEN_FROM", "TOKEN_FULL", "TOKEN_GROUP",
-  "TOKEN_HASH", "TOKEN_HAVING", "TOKEN_HOUR", "TOKEN_IN", "TOKEN_INDEX",
-  "TOKEN_INNER", "TOKEN_INSERT", "TOKEN_INTEGER", "TOKEN_INTERVAL",
-  "TOKEN_INTO", "TOKEN_JOIN", "TOKEN_KEY", "TOKEN_LAST", "TOKEN_LEFT",
-  "TOKEN_LIMIT", "TOKEN_LONG", "TOKEN_MINUTE", "TOKEN_MONTH", "TOKEN_NULL",
-  "TOKEN_NULLS", "TOKEN_OFF", "TOKEN_ON", "TOKEN_ORDER", "TOKEN_OUTER",
-  "TOKEN_OVER", "TOKEN_PARTITION", "TOKEN_PARTITIONS", "TOKEN_PERCENT",
+  "TOKEN_ALL", "TOKEN_UNION", "TOKEN_INTERSECT", "TOKEN_ADD",
+  "TOKEN_ALTER", "TOKEN_AS", "TOKEN_ASC", "TOKEN_BIGINT", "TOKEN_BIT",
+  "TOKEN_BITWEAVING", "TOKEN_BLOCKPROPERTIES", "TOKEN_BLOCKSAMPLE",
+  "TOKEN_BLOOM_FILTER", "TOKEN_CSB_TREE", "TOKEN_BY", "TOKEN_CASE",
+  "TOKEN_CHARACTER", "TOKEN_CHECK", "TOKEN_COLUMN", "TOKEN_CONSTRAINT",
+  "TOKEN_COPY", "TOKEN_CREATE", "TOKEN_CURRENT", "TOKEN_DATE",
+  "TOKEN_DATETIME", "TOKEN_DAY", "TOKEN_DECIMAL", "TOKEN_DEFAULT",
+  "TOKEN_DELETE", "TOKEN_DELIMITER", "TOKEN_DESC", "TOKEN_DISTINCT",
+  "TOKEN_DOUBLE", "TOKEN_DROP", "TOKEN_ELSE", "TOKEN_END",
+  "TOKEN_ESCAPE_STRINGS", "TOKEN_EXISTS", "TOKEN_EXTRACT", "TOKEN_FALSE",
+  "TOKEN_FIRST", "TOKEN_FLOAT", "TOKEN_FOLLOWING", "TOKEN_FOR",
+  "TOKEN_FOREIGN", "TOKEN_FROM", "TOKEN_FULL", "TOKEN_GROUP", "TOKEN_HASH",
+  "TOKEN_HAVING", "TOKEN_HOUR", "TOKEN_IN", "TOKEN_INDEX", "TOKEN_INNER",
+  "TOKEN_INSERT", "TOKEN_INTEGER", "TOKEN_INTERVAL", "TOKEN_INTO",
+  "TOKEN_JOIN", "TOKEN_KEY", "TOKEN_LAST", "TOKEN_LEFT", "TOKEN_LIMIT",
+  "TOKEN_LONG", "TOKEN_MINUTE", "TOKEN_MONTH", "TOKEN_NULL", "TOKEN_NULLS",
+  "TOKEN_OFF", "TOKEN_ON", "TOKEN_ORDER", "TOKEN_OUTER", "TOKEN_OVER",
+  "TOKEN_PARTITION", "TOKEN_PARTITIONS", "TOKEN_PERCENT",
   "TOKEN_PRECEDING", "TOKEN_PRIMARY", "TOKEN_PRIORITY", "TOKEN_QUIT",
   "TOKEN_RANGE", "TOKEN_REAL", "TOKEN_REFERENCES", "TOKEN_RIGHT",
   "TOKEN_ROW", "TOKEN_ROW_DELIMITER", "TOKEN_ROWS", "TOKEN_SECOND",
@@ -855,9 +863,10 @@
   "opt_index_properties", "insert_statement", "copy_from_statement",
   "opt_copy_from_params", "copy_from_params", "update_statement",
   "delete_statement", "assignment_list", "assignment_item",
-  "select_statement", "opt_priority_clause", "with_clause", "with_list",
-  "with_list_element", "select_query", "opt_all_distinct", "selection",
-  "selection_item_commalist", "selection_item", "from_clause",
+  "set_operation_statement", "opt_priority_clause", "with_clause",
+  "with_list", "with_list_element", "set_operation_union",
+  "set_operation_intersect", "select_query", "opt_all_distinct",
+  "selection", "selection_item_commalist", "selection_item", "from_clause",
   "subquery_expression", "opt_sample_clause", "join_type",
   "joined_table_reference", "table_reference", "table_reference_signature",
   "table_reference_signature_primary", "joined_table_reference_commalist",
@@ -899,17 +908,17 @@
      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
-     380,   381,   382,   383,   384,   385,   386,   387,   388,    59,
-      10,    40,    41,    44,    37
+     380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
+     390,    59,    10,    40,    41,    44,    37
 };
 # endif
 
-#define YYPACT_NINF -234
+#define YYPACT_NINF -244
 
 #define yypact_value_is_default(Yystate) \
-  (!!((Yystate) == (-234)))
+  (!!((Yystate) == (-244)))
 
-#define YYTABLE_NINF -130
+#define YYTABLE_NINF -134
 
 #define yytable_value_is_error(Yytable_value) \
   0
@@ -918,60 +927,61 @@
      STATE-NUM.  */
 static const yytype_int16 yypact[] =
 {
-     168,  -234,  -234,   -58,   181,   -19,    40,   -37,    59,  -234,
-     123,   181,   181,  -234,   208,   127,  -234,  -234,  -234,  -234,
-    -234,  -234,  -234,  -234,  -234,  -234,    -2,    95,   -46,   233,
-     181,  -234,  -234,   113,   181,   181,   181,   181,   181,  -234,
-    -234,   667,   139,   114,  -234,   236,   128,  -234,  -234,  -234,
-     189,    95,   183,  -234,  -234,  -234,  -234,    60,   272,   196,
-     138,   191,  -234,    80,  -234,  -234,   296,   299,  -234,  -234,
-    -234,   757,   187,  -234,   242,  -234,  -234,   190,  -234,  -234,
-     310,  -234,  -234,  -234,  -234,   205,  -234,  -234,   214,   277,
-     850,   355,   290,   219,  -234,  -234,   182,    20,  -234,  -234,
-     269,  -234,  -234,  -234,  -234,  -234,  1030,    -9,   181,   181,
-     228,   181,   181,  -234,   366,    89,   174,   241,   181,   181,
-     577,  -234,  -234,   235,   181,  -234,  -234,  -234,   577,    42,
-      17,  -234,   370,  -234,   126,   126,  1120,   371,  -234,   243,
-      30,  -234,    34,   191,  1120,  -234,  -234,   181,  1120,  -234,
-    -234,  -234,  -234,  1120,    35,   299,  -234,   181,   359,   -56,
-    -234,   368,  -234,   270,  -234,   110,  -234,   270,  -234,   181,
-      -1,   181,   181,   247,  -234,   248,  -234,   141,  1158,   940,
-     228,   487,   378,   381,  -234,  -234,   545,   375,  1210,   143,
-       8,  1120,    58,  -234,  1120,  -234,   330,   254,  -234,  -234,
-    -234,  -234,  -234,  -234,   327,  -234,    50,   255,  -234,  -234,
-      16,   245,   153,  -234,   256,   245,   -14,   331,  -234,  -234,
-      20,  -234,   306,  -234,  -234,   264,  1120,  -234,   268,   151,
-     181,  -234,  1120,  -234,   181,  -234,  -234,   271,   325,   328,
-     274,  -234,  -234,  -234,    31,   181,   291,    -1,   181,  -234,
-      14,  -234,  -234,     2,   326,   577,   577,    62,  -234,  -234,
-    -234,  -234,  -234,  -234,  -234,  -234,  1120,   279,  1120,    39,
-    -234,   154,   289,  1120,    25,  -234,   360,   268,  -234,  -234,
-    1120,   415,  -234,   133,   181,  -234,  -234,   332,  -234,   334,
-     335,   340,    34,  -234,   418,   420,   245,   388,   358,   394,
-     293,   342,  -234,   156,  -234,  1120,  -234,   268,  -234,   577,
-     295,   298,   181,   437,     1,   158,  -234,   167,   416,   144,
-    -234,   301,   311,  -234,   357,   309,  1210,  -234,   362,   181,
-    -234,  -234,    14,  -234,  -234,   381,  -234,  -234,  -234,  1120,
-     312,    76,   850,  -234,   268,   363,  -234,  -234,  1210,   313,
-     268,  1120,  -234,    32,   -13,  -234,  -234,  -234,  -234,  -234,
-      34,   153,   351,   356,  -234,  1120,   577,   364,  1120,  -234,
-     419,   159,  -234,   268,     7,   181,   181,   169,  -234,  -234,
-    -234,  -234,  -234,  -234,  -234,   173,  -234,   181,  -234,  -234,
-    -234,  -234,   315,    -1,   422,   365,  -234,   577,  -234,  -234,
-     322,  -234,   237,   850,  -234,  1120,   171,  -234,  -234,  1210,
-     268,  -234,   458,  -234,   372,  -234,  -234,   329,   378,   429,
-     382,   329,  1120,  -234,  -234,  -234,   452,  -234,   175,   177,
-    -234,   469,     1,  -234,   181,  -234,  -234,   337,   435,  -234,
-       9,   181,  1120,   179,   268,  -234,   184,   341,   577,  1120,
-     472,   349,   343,  -234,   178,    22,   376,  -234,  -234,  -234,
-     192,  -234,  -234,  -234,  -234,    21,   181,   -16,  -234,   346,
-     268,  -234,  -234,  -234,   378,   343,  -234,   181,  -234,   349,
-    -234,  1120,  -234,  -234,   403,   396,   389,   400,   494,   181,
-    -234,   181,  -234,  -234,   181,  -234,   207,  -234,  -234,   373,
-    -234,   473,  -234,  -234,   115,  -234,  -234,  -234,  -234,    41,
-     374,  -234,   209,  -234,   181,   383,  -234,  -234,   438,   395,
-     439,  -234,   181,  -234,   211,   306,  -234,  -234,  -234,   215,
-     411,   377,  -234,   505,  -234,  -234
+     807,  -244,  -244,   -55,   203,   -26,    -2,    -6,    43,  -244,
+      86,   203,   203,  -244,   136,   125,  -244,  -244,  -244,  -244,
+    -244,  -244,  -244,  -244,  -244,  -244,   -22,    -3,   128,  -244,
+     -78,   182,   203,  -244,  -244,   130,   203,   203,   203,   203,
+     203,  -244,  -244,   633,   107,    89,  -244,   209,   120,  -244,
+    -244,  -244,   197,    -3,    86,   161,  -244,   137,  -244,  -244,
+    -244,    27,   265,   180,   141,   170,  -244,   -25,  -244,  -244,
+     301,   313,  -244,  -244,  -244,   660,   188,  -244,   249,  -244,
+    -244,   206,  -244,  -244,   357,  -244,  -244,  -244,  -244,   221,
+    -244,  -244,   222,   282,   783,   366,   299,   231,  -244,  -244,
+     272,     7,  -244,  -244,   277,  -244,  -244,  -244,  -244,  -244,
+     933,    -5,   203,   203,   237,   203,   203,  -244,   137,   374,
+    -244,   233,   239,   246,   203,   203,   551,  -244,  -244,   244,
+     203,  -244,  -244,  -244,   551,    47,    40,  -244,   376,  -244,
+     153,   153,   960,   381,  -244,     8,    24,  -244,    23,   170,
+     960,  -244,  -244,   203,   960,  -244,  -244,  -244,  -244,   960,
+      36,   313,  -244,   203,   363,    94,  -244,   378,  -244,   137,
+    -244,   144,  -244,   137,   128,  -244,   203,   -21,   203,   203,
+     248,  -244,   250,  -244,   147,  1069,   810,   237,   469,   387,
+     388,  -244,  -244,   329,   380,  1042,   152,    45,   960,    48,
+    -244,   960,  -244,   333,   257,  -244,  -244,  -244,  -244,  -244,
+    -244,   330,  -244,   168,   260,  -244,  -244,    19,    66,   146,
+    -244,   264,    66,    51,   335,  -244,  -244,     7,  -244,   304,
+    -244,  -244,   267,   960,  -244,   279,   158,   203,  -244,   960,
+    -244,   203,  -244,  -244,   270,   331,   334,   273,  -244,  -244,
+    -244,   165,   203,   290,   -21,   203,  -244,    77,  -244,  -244,
+       2,    64,   551,   551,   193,  -244,  -244,  -244,  -244,  -244,
+    -244,  -244,  -244,   960,   281,   960,    31,  -244,   162,   294,
+     960,    71,  -244,   364,   279,  -244,  -244,   960,   419,  -244,
+     110,   203,  -244,  -244,   332,  -244,   336,   337,   342,    23,
+    -244,   423,   426,    66,   392,   361,   397,   296,   343,  -244,
+     166,  -244,   960,  -244,   279,  -244,   551,   300,   302,   203,
+     437,   119,   169,  -244,   172,   421,    60,  -244,   305,   316,
+    -244,   355,   310,  1042,  -244,   368,   203,  -244,  -244,    77,
+    -244,  -244,   388,  -244,  -244,  -244,   960,   315,    95,   783,
+    -244,   279,   362,  -244,  -244,  1042,   317,   279,   960,  -244,
+      26,   -15,  -244,  -244,  -244,  -244,  -244,    23,   146,   356,
+     358,  -244,   960,   551,   365,   960,  -244,   420,   111,  -244,
+     279,     4,   203,   203,   174,  -244,  -244,  -244,  -244,  -244,
+    -244,  -244,   201,  -244,   203,  -244,  -244,  -244,  -244,   321,
+     -21,   427,   369,  -244,   551,  -244,  -244,   323,  -244,   238,
+     783,  -244,   960,   179,  -244,  -244,  1042,   279,  -244,   460,
+    -244,   384,  -244,  -244,   326,   387,   435,   394,   326,   960,
+    -244,  -244,  -244,   459,  -244,   181,   183,  -244,   480,   119,
+    -244,   203,  -244,  -244,   345,   447,  -244,     6,   203,   960,
+     185,   279,  -244,   192,   349,   551,   960,   489,   367,   353,
+    -244,   240,    12,   389,  -244,  -244,  -244,   208,  -244,  -244,
+    -244,  -244,    11,   203,    22,  -244,   359,   279,  -244,  -244,
+    -244,   387,   353,  -244,   203,  -244,   367,  -244,   960,  -244,
+    -244,   405,   404,   398,   407,   500,   203,  -244,   203,  -244,
+    -244,   203,  -244,   210,  -244,  -244,   371,  -244,   482,  -244,
+    -244,   129,  -244,  -244,  -244,  -244,    13,   373,  -244,   212,
+    -244,   203,   375,  -244,  -244,   449,   410,   454,  -244,   203,
+    -244,   214,   304,  -244,  -244,  -244,   216,   424,   383,  -244,
+     521,  -244,  -244
 };
 
   /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
@@ -979,92 +989,93 @@
      means the default is an error.  */
 static const yytype_uint16 yydefact[] =
 {
-       0,     6,   289,     0,     0,     0,     0,     0,     0,    18,
-     114,     0,     0,     7,     0,     0,    15,     8,    10,    11,
-      13,    14,     9,    17,    12,    16,     0,   107,     0,   287,
-       0,   281,   282,     0,     0,     0,     0,     0,     0,   115,
-     116,     0,     0,   109,   110,     0,   147,     1,     3,     2,
-       0,   107,     0,   105,     5,     4,   288,     0,     0,     0,
-       0,   188,    25,     0,   247,   244,     0,   273,   117,    40,
-      29,     0,     0,    30,    31,    34,    36,     0,    37,    39,
-       0,    41,   243,    35,    38,     0,    32,    33,     0,     0,
-       0,     0,     0,   118,   119,   223,   123,   209,   211,   213,
-     216,   219,   220,   221,   215,   214,     0,   259,     0,     0,
-       0,     0,     0,   106,     0,     0,     0,    94,     0,     0,
-       0,   101,   189,     0,     0,    91,   245,   246,     0,     0,
-     239,   236,     0,    43,     0,   248,     0,     0,    44,     0,
-       0,   250,     0,   188,     0,   274,   275,     0,     0,   122,
-     277,   278,   276,     0,     0,     0,   212,     0,     0,   188,
-     103,     0,   111,     0,   112,     0,   279,     0,   108,     0,
-       0,     0,     0,     0,    93,    66,    27,     0,     0,     0,
-       0,     0,   190,   192,   194,   196,     0,   214,     0,     0,
-       0,     0,   239,   233,     0,   237,     0,     0,   253,   254,
-     255,   252,   256,   251,     0,   249,     0,     0,   125,   222,
-       0,     0,   149,   138,   124,   143,   126,   151,   120,   121,
-     208,   210,   165,   217,   260,     0,     0,   224,   241,     0,
-       0,   100,     0,   148,     0,    92,    19,     0,     0,     0,
-       0,    20,    21,    22,     0,     0,     0,    64,     0,    42,
-      56,   195,   203,     0,     0,     0,     0,     0,   263,   265,
-     266,   267,   268,   264,   269,   271,     0,     0,     0,     0,
-     257,     0,     0,     0,     0,   234,     0,   240,   232,    45,
-       0,     0,    46,   129,     0,   139,   145,   135,   130,   131,
-     133,     0,     0,   142,     0,     0,   141,     0,   153,     0,
-       0,   167,   225,     0,   226,     0,   102,   104,   280,     0,
-       0,     0,     0,     0,     0,     0,   261,     0,   259,     0,
-      63,    65,    68,    28,     0,     0,     0,    47,     0,     0,
-      49,    55,    57,    26,   202,   191,   193,   270,   272,     0,
-       0,     0,     0,   204,   201,     0,   200,    90,     0,     0,
-     238,     0,   231,     0,     0,   144,   146,   136,   132,   134,
-       0,   150,     0,     0,   140,     0,     0,   155,     0,   218,
-       0,   169,   227,   242,     0,     0,     0,     0,    96,   285,
-     286,   284,   283,    97,    95,     0,    67,     0,    83,    84,
-      85,    86,    87,     0,     0,    70,    48,     0,    51,    50,
-       0,    54,     0,     0,   206,     0,     0,   199,   258,     0,
-     235,   228,     0,   229,     0,   127,   128,   152,   154,     0,
-     157,   166,     0,   172,   171,   164,     0,    61,     0,     0,
-      58,     0,     0,   262,     0,    24,    62,     0,     0,    23,
-       0,     0,     0,     0,   197,   205,     0,     0,     0,     0,
-       0,   159,   168,   179,   182,     0,     0,    59,    98,    99,
-       0,    74,    76,    77,    78,     0,     0,     0,    52,     0,
-     198,   207,    89,   230,   137,   156,   158,     0,   113,   160,
-     161,     0,   183,   184,   185,     0,     0,     0,     0,     0,
-      88,     0,    82,    80,     0,    79,     0,    72,    73,     0,
-      53,     0,   162,   180,     0,   181,   173,   175,   174,     0,
-       0,    75,     0,    69,     0,     0,   186,   187,     0,     0,
-       0,   170,     0,    81,     0,   165,   176,   178,   177,     0,
-       0,     0,    60,     0,   163,    71
+       0,     6,   293,     0,     0,     0,     0,     0,     0,    18,
+     118,     0,     0,     7,     0,     0,    15,     8,    10,    11,
+      13,    14,     9,    17,    12,    16,     0,   107,   114,   116,
+       0,   291,     0,   285,   286,     0,     0,     0,     0,     0,
+       0,   119,   120,     0,     0,   109,   110,     0,   151,     1,
+       3,     2,     0,   107,   118,     0,   105,     0,     5,     4,
+     292,     0,     0,     0,     0,   192,    25,     0,   251,   248,
+       0,   277,   121,    40,    29,     0,     0,    30,    31,    34,
+      36,     0,    37,    39,     0,    41,   247,    35,    38,     0,
+      32,    33,     0,     0,     0,     0,     0,   122,   123,   227,
+     127,   213,   215,   217,   220,   223,   224,   225,   219,   218,
+       0,   263,     0,     0,     0,     0,     0,   106,     0,     0,
+     115,     0,     0,    94,     0,     0,     0,   101,   193,     0,
+       0,    91,   249,   250,     0,     0,   243,   240,     0,    43,
+       0,   252,     0,     0,    44,     0,     0,   254,     0,   192,
+       0,   278,   279,     0,     0,   126,   281,   282,   280,     0,
+       0,     0,   216,     0,     0,   192,   103,     0,   111,     0,
+     112,     0,   283,     0,   113,   108,     0,     0,     0,     0,
+       0,    93,    66,    27,     0,     0,     0,     0,     0,   194,
+     196,   198,   200,     0,   218,     0,     0,     0,     0,   243,
+     237,     0,   241,     0,     0,   257,   258,   259,   256,   260,
+     255,     0,   253,     0,     0,   129,   226,     0,     0,   153,
+     142,   128,   147,   130,   155,   124,   125,   212,   214,   169,
+     221,   264,     0,     0,   228,   245,     0,     0,   100,     0,
+     152,     0,    92,    19,     0,     0,     0,     0,    20,    21,
+      22,     0,     0,     0,    64,     0,    42,    56,   199,   207,
+       0,     0,     0,     0,     0,   267,   269,   270,   271,   272,
+     268,   273,   275,     0,     0,     0,     0,   261,     0,     0,
+       0,     0,   238,     0,   244,   236,    45,     0,     0,    46,
+     133,     0,   143,   149,   139,   134,   135,   137,     0,     0,
+     146,     0,     0,   145,     0,   157,     0,     0,   171,   229,
+       0,   230,     0,   102,   104,   284,     0,     0,     0,     0,
+       0,     0,     0,   265,     0,   263,     0,    63,    65,    68,
+      28,     0,     0,     0,    47,     0,     0,    49,    55,    57,
+      26,   206,   195,   197,   274,   276,     0,     0,     0,     0,
+     208,   205,     0,   204,    90,     0,     0,   242,     0,   235,
+       0,     0,   148,   150,   140,   136,   138,     0,   154,     0,
+       0,   144,     0,     0,   159,     0,   222,     0,   173,   231,
+     246,     0,     0,     0,     0,    96,   289,   290,   288,   287,
+      97,    95,     0,    67,     0,    83,    84,    85,    86,    87,
+       0,     0,    70,    48,     0,    51,    50,     0,    54,     0,
+       0,   210,     0,     0,   203,   262,     0,   239,   232,     0,
+     233,     0,   131,   132,   156,   158,     0,   161,   170,     0,
+     176,   175,   168,     0,    61,     0,     0,    58,     0,     0,
+     266,     0,    24,    62,     0,     0,    23,     0,     0,     0,
+       0,   201,   209,     0,     0,     0,     0,     0,   163,   172,
+     183,   186,     0,     0,    59,    98,    99,     0,    74,    76,
+      77,    78,     0,     0,     0,    52,     0,   202,   211,    89,
+     234,   141,   160,   162,     0,   117,   164,   165,     0,   187,
+     188,   189,     0,     0,     0,     0,     0,    88,     0,    82,
+      80,     0,    79,     0,    72,    73,     0,    53,     0,   166,
+     184,     0,   185,   177,   179,   178,     0,     0,    75,     0,
+      69,     0,     0,   190,   191,     0,     0,     0,   174,     0,
+      81,     0,   169,   180,   182,   181,     0,     0,     0,    60,
+       0,   167,    71
 };
 
   /* YYPGOTO[NTERM-NUM].  */
 static const yytype_int16 yypgoto[] =
 {
-    -234,  -234,  -234,  -234,  -234,  -234,  -234,  -234,   -94,  -234,
-     338,   185,  -234,  -234,  -233,  -234,  -234,  -234,  -234,  -234,
-    -234,    47,    36,  -234,  -234,  -234,  -234,  -234,  -234,  -234,
-    -234,  -234,  -234,  -234,  -234,   292,  -234,   474,  -234,  -234,
-     414,    11,  -234,  -234,  -234,   386,  -234,   -97,  -234,  -234,
-    -189,   166,  -180,   -10,  -234,  -234,  -234,  -234,  -234,  -234,
-    -234,    52,    10,  -234,  -234,  -234,  -234,  -234,  -234,    83,
-      53,  -234,  -234,   -75,  -234,  -116,   278,   282,   361,   -35,
-     393,   390,   436,  -137,  -234,  -234,  -234,  -234,   352,  -234,
-     417,   354,  -207,  -185,   413,   140,  -119,  -234,  -234,  -234,
-    -234,  -234,  -120,    -4,   120,  -234,  -234
+    -244,  -244,  -244,  -244,  -244,  -244,  -244,  -244,  -132,  -244,
+     346,   191,  -244,  -244,  -243,  -244,  -244,  -244,  -244,  -244,
+    -244,    59,    35,  -244,  -244,  -244,  -244,  -244,  -244,  -244,
+    -244,  -244,  -244,  -244,  -244,   303,  -244,   483,  -244,  -244,
+     428,   200,   425,    -8,   485,  -244,  -244,   395,  -244,   -98,
+    -244,  -244,  -165,   175,  -179,   -10,  -244,  -244,  -244,  -244,
+    -244,  -244,  -244,    58,     5,  -244,  -244,  -244,  -244,  -244,
+    -244,    90,    61,  -244,  -244,    39,  -244,  -133,   285,   287,
+     379,   -37,   400,   403,   438,  -144,  -244,  -244,  -244,  -244,
+     352,  -244,   430,   360,  -212,  -186,   429,   148,  -121,  -244,
+    -244,  -244,  -244,  -244,  -127,    -4,   132,  -244,  -244
 };
 
   /* YYDEFGOTO[NTERM-NUM].  */
 static const yytype_int16 yydefgoto[] =
 {
-      -1,    14,    15,    16,    17,    18,    19,    20,   176,   177,
-      91,   331,   332,   333,   241,   321,   322,   246,   395,   439,
-     499,   460,   461,   462,   463,   464,   392,   435,    21,    22,
-     174,   315,    23,    24,   159,   160,    25,    53,    26,    43,
-      44,   139,    41,    92,    93,    94,   143,    95,   296,   291,
-     212,   213,   285,   286,   214,   298,   367,   420,   451,   478,
-     479,   480,   300,   301,   371,   425,   426,   488,   521,   452,
-     453,   484,   505,   121,   122,   182,   183,   184,   185,   186,
-      97,    98,    99,   100,   101,   102,   103,   192,   193,   130,
-     131,   196,   229,   104,   204,   271,   105,   317,   268,   106,
-     148,   153,   165,   107,   383,    28,    29
+      -1,    14,    15,    16,    17,    18,    19,    20,   183,   184,
+      95,   338,   339,   340,   248,   328,   329,   253,   402,   446,
+     506,   467,   468,   469,   470,   471,   399,   442,    21,    22,
+     181,   322,    23,    24,   165,   166,    25,    56,    26,    45,
+      46,   145,    28,    29,    43,    96,    97,    98,   149,    99,
+     303,   298,   219,   220,   292,   293,   221,   305,   374,   427,
+     458,   485,   486,   487,   307,   308,   378,   432,   433,   495,
+     528,   459,   460,   491,   512,   127,   128,   189,   190,   191,
+     192,   193,   101,   102,   103,   104,   105,   106,   107,   199,
+     200,   136,   137,   203,   236,   108,   211,   278,   109,   324,
+     275,   110,   154,   159,   171,   111,   390,    30,    31
 };
 
   /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
@@ -1072,374 +1083,348 @@
      number is the opposite.  If YYTABLE_NINF, syntax error.  */
 static const yytype_int16 yytable[] =
 {
-      33,   187,    45,   270,   189,   215,    96,    42,    46,   187,
-     255,    27,   190,   164,   320,   255,   255,   255,   157,   303,
-      31,   283,    32,   294,   324,    31,    57,    32,   492,   485,
-      59,    60,    61,    62,    63,   293,   129,    51,    31,    31,
-      32,    32,   237,   150,   151,   211,   145,   146,   518,   345,
-     493,   145,   146,   145,   146,   140,   412,   325,   497,    34,
-     187,    30,   187,   145,   146,   253,   379,   326,   217,   238,
-     486,   145,   146,   215,   125,   236,   120,   194,    50,   337,
-     338,   339,    37,   252,   231,   405,   313,   230,   115,   519,
-     498,    54,   149,   314,    55,   380,   381,   145,   146,    45,
-      35,   206,   239,   361,   161,    46,   327,   166,   167,    96,
-     295,    36,    10,   211,   175,   178,   364,   328,   194,   116,
-     166,   281,   329,   228,   382,   240,   316,   158,   273,   413,
-      10,   346,   158,   169,   170,   406,   187,   187,   216,   340,
-     330,   398,    38,   219,   334,   351,   254,   487,   128,   427,
-     223,   468,    39,   224,   323,   215,   274,   210,   417,   277,
-     436,   421,   494,   408,   152,   178,   520,   242,   243,     1,
-     343,     2,   209,   191,   411,   210,   222,   198,   235,   388,
-      40,   516,   389,   390,    58,    31,    31,    32,    32,   191,
-     187,   228,   377,   374,    10,   211,   443,   307,     3,   145,
-     146,   517,   199,   145,   146,   287,   216,    46,    47,   123,
-     482,    46,   288,   147,     4,     5,   200,   201,   171,   172,
-     289,   124,     6,   215,   270,   287,   161,     7,   431,    52,
-     308,   341,   288,   344,   483,   432,    56,  -129,   350,   202,
-     289,   318,   290,   404,   178,   353,   442,   187,     8,    31,
-     418,    32,   233,   234,   108,   428,   429,   109,   145,   146,
-     391,   203,   290,   211,    48,   423,    49,   110,   433,   111,
-     373,   424,   112,     9,   356,   355,   284,   117,   187,   119,
-      46,   440,    10,   247,   248,   272,   234,   114,   216,   145,
-     146,   118,    46,   304,   305,    11,   347,   348,   372,   305,
-     384,   385,    12,   126,   402,    13,   127,   228,   166,   386,
-     387,   430,   234,   445,   305,   135,   410,   456,   234,   457,
-     234,   471,   305,   120,   133,   400,   472,   348,   132,   187,
-     228,   134,   474,   228,   490,   491,   257,   258,   259,   260,
-     261,   262,   263,   264,   265,   266,   136,   145,   146,   513,
-     491,   523,   234,   530,   234,   137,   216,   532,   234,   138,
-     141,   142,   144,    31,    64,    32,    65,   154,   228,   163,
-     444,   166,   166,   168,   512,   173,   188,   197,   207,   232,
-      66,    67,   225,   318,    10,   208,   255,   454,   244,   245,
-     256,   278,    69,    70,   524,   269,   279,   282,   280,   292,
-      71,    72,   529,   267,   297,   299,   302,   470,    73,    74,
-     310,    75,   309,   311,   454,   312,   226,    76,   349,   319,
-     342,   352,   354,    77,   360,   362,    78,   363,   365,   357,
-     465,   358,   359,   366,   368,   369,   375,   469,   370,   376,
-      79,    80,   378,   157,   393,   394,   454,   399,    81,   396,
-     397,    82,   415,   403,   409,   407,   434,   416,   437,   422,
-     419,   495,   465,   441,   438,   447,    83,   448,   209,   449,
-     450,   455,   305,   501,   458,   467,    84,    85,   466,   476,
-      86,    87,   477,   473,   489,   510,   481,   465,   500,    88,
-     166,    31,    64,    32,    65,    89,   504,   179,   506,   507,
-      90,   227,   508,   509,   515,   527,   526,   528,    66,    67,
-     166,   533,   535,   496,   514,   522,   250,   401,   166,   534,
-      69,    70,   306,   162,   525,   113,   414,   511,    71,    72,
-     218,   502,   475,   335,   503,   531,    73,    74,   336,    75,
-     251,   220,   156,   221,   275,    76,   276,   195,   205,   446,
-     180,    77,   459,     0,    78,   257,   258,   259,   260,   261,
-     262,   263,   264,   265,   266,     0,   145,   146,    79,    80,
-       0,     0,     0,     0,     0,     0,    81,     0,     0,    82,
-       0,    31,    64,    32,    65,     0,     0,   179,     0,     0,
-       0,     0,     0,     0,    83,     0,     0,     0,    66,    67,
-       0,    10,     0,     0,    84,    85,     0,     0,    86,    87,
-      69,    70,     0,     0,     0,     0,     0,    88,    71,    72,
-       0,     0,   267,    89,     0,     0,    73,    74,   181,    75,
-       0,     0,     0,     0,     0,    76,     0,     0,     0,     0,
-     180,    77,     0,     0,    78,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,    79,    80,
-       0,     0,     0,     0,     0,     0,    81,     0,     0,    82,
-       0,    31,    64,    32,    65,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,    83,     0,     0,     0,    66,    67,
-      68,     0,     0,     0,    84,    85,     0,     0,    86,    87,
-      69,    70,     0,     0,     0,     0,     0,    88,    71,    72,
-       0,     0,     0,    89,     0,     0,    73,    74,   181,    75,
-       0,     0,     0,     0,     0,    76,     0,     0,     0,     0,
-       0,    77,     0,     0,    78,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,    79,    80,
-       0,     0,     0,     0,     0,     0,    81,     0,     0,    82,
-       0,    31,    64,    32,    65,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,    83,     0,     0,     0,    66,    67,
-       0,     0,     0,     0,    84,    85,     0,     0,    86,    87,
-      69,    70,     0,     0,     0,     0,     0,    88,    71,    72,
-       0,     0,     0,    89,     0,     0,    73,    74,    90,    75,
-       0,     0,     0,     0,     0,    76,     0,     0,     0,     0,
-       0,    77,     0,     0,    78,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,    79,    80,
-       0,     0,     0,     0,     0,     0,    81,     0,     0,    82,
-       0,     0,     0,     0,    31,    64,    32,    65,     0,     0,
-       0,     0,     0,     0,    83,     0,     0,     0,     0,     0,
-       0,    66,    67,     0,    84,    85,     0,     0,    86,    87,
-       0,     0,     0,    69,    70,     0,     0,    88,   128,     0,
-       0,    71,    72,    89,     0,     0,     0,     0,    90,    73,
-      74,     0,    75,     0,     0,     0,     0,     0,    76,     0,
-       0,     0,     0,     0,    77,     0,     0,    78,     0,     0,
+      35,   197,    47,   196,   222,   194,   100,    44,    48,   277,
+     262,   327,   262,   194,   262,    33,   170,    34,   499,   492,
+     525,   310,   163,    33,   244,    34,    54,    33,    61,    34,
+     156,   157,    63,    64,    65,    66,    67,    54,   135,   500,
+      33,   352,    34,   300,   243,   151,   152,   151,   152,   120,
+     218,   245,   290,   262,    36,   260,   419,   146,   121,   131,
+      52,    58,   493,   526,    59,   194,    32,   194,   151,   152,
+      33,    38,    34,   222,   264,   265,   266,   267,   268,   269,
+     270,   271,   272,   273,   246,   151,   152,   331,   122,   259,
+     301,    10,   151,   152,    10,    37,   155,   395,   504,   291,
+     396,   397,   201,    47,   412,   213,   129,   247,   167,    48,
+     201,   172,   173,   100,    41,    39,   151,   152,   130,   218,
+     182,   185,   332,   330,   371,   353,   172,   235,    40,   420,
+     505,   323,   333,    55,   368,    10,    49,   413,   164,   494,
+     527,   194,   194,   274,   223,    42,   341,   405,   434,   226,
+     475,   261,   215,   158,   501,   222,   230,   443,    57,   231,
+     424,   281,   217,   428,   284,   242,   217,   280,   216,   415,
+     418,   334,   185,   134,   249,   250,   350,   302,   398,   229,
+     198,   198,   335,   381,   294,    60,   386,   336,   224,   151,
+     152,   295,   384,   358,   164,   194,   235,   523,   450,   296,
+      27,   218,   314,    62,   238,   337,   205,    33,   216,    34,
+     344,   345,   346,   223,    48,   387,   388,   524,    48,   430,
+     294,   297,   320,   222,   112,   431,    53,   295,   126,   321,
+     277,   206,  -133,   167,   113,   296,   348,   315,   351,   237,
+     425,   288,   114,   357,   389,   207,   208,   449,   325,   411,
+     360,   185,   194,    10,   362,   435,   436,   297,   438,   151,
+     152,   151,   152,   115,    50,   439,    51,   119,   209,   218,
+     123,   447,   347,   440,   489,   380,    33,   124,    34,   176,
+     177,   363,   116,   194,   125,   178,   179,    48,   240,   241,
+     210,   254,   255,   151,   152,   223,   279,   241,   490,    48,
+     151,   152,   311,   312,   126,   153,   354,   355,   132,   409,
+     379,   312,   235,   391,   392,   172,   393,   394,   437,   241,
+     133,   417,   481,   452,   312,   463,   241,   464,   241,   478,
+     312,   138,   407,   139,   194,   235,   479,   355,   235,   264,
+     265,   266,   267,   268,   269,   270,   271,   272,   273,   140,
+     151,   152,   497,   498,   520,   498,   530,   241,   537,   241,
+     539,   241,   141,   223,   142,   143,   144,    33,    68,    34,
+      69,   147,   148,   235,   519,   451,   150,   160,   172,   172,
+     169,   175,   180,   204,    70,    71,   232,   195,   214,   239,
+     325,   251,   461,   252,   531,   262,   285,   263,    73,    74,
+     276,   286,   536,   287,   289,   306,    75,    76,   274,   299,
+     304,   309,   477,   316,    77,    78,   319,    79,   317,   461,
+     326,   318,   233,    80,   349,   356,   361,   359,   367,    81,
+     369,   364,    82,   370,   372,   365,   366,   472,   373,   375,
+     376,   377,   385,   382,   476,   383,    83,    84,   163,   403,
+     400,   461,   401,   404,    85,   406,   414,    86,   410,   422,
+     416,   423,   429,   426,   441,   444,   448,   454,   502,   472,
+     445,   312,    87,    33,    68,    34,    69,   456,   462,   186,
+     508,   455,    88,    89,   457,   465,    90,    91,   473,   474,
+      70,    71,   517,   480,   472,    92,   483,   172,   488,   496,
+     511,    93,   484,   507,    73,    74,    94,   234,   513,   516,
+     514,   515,    75,    76,   521,   522,   529,   172,   532,   533,
+      77,    78,   534,    79,   535,   172,   540,   541,   542,    80,
+     408,   257,   503,   518,   187,    81,   117,   538,    82,   118,
+     313,   168,   421,   174,   509,   225,   482,   342,   162,   510,
+     343,   282,    83,    84,   227,    33,    68,    34,    69,   283,
+      85,   186,   228,    86,   453,   258,   202,     0,     0,     0,
+     212,   466,    70,    71,     0,     0,     0,     0,    87,     0,
+       0,     0,     0,     0,     0,    10,    73,    74,    88,    89,
+       0,     0,    90,    91,    75,    76,     0,     0,     0,     0,
+       0,    92,    77,    78,     0,    79,     0,    93,     0,     0,
+       0,    80,   188,     0,     0,     0,   187,    81,     0,     0,
+      82,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,    83,    84,     0,    33,    68,    34,
+      69,     0,    85,     0,     0,    86,     0,     0,     0,     0,
+       0,     0,     0,     0,    70,    71,    72,     0,     0,     0,
+      87,     0,     0,     0,    33,    68,    34,    69,    73,    74,
+      88,    89,     0,     0,    90,    91,    75,    76,     0,     0,
+       0,    70,    71,    92,    77,    78,     0,    79,     0,    93,
+       0,     0,     0,    80,   188,    73,    74,     0,     0,    81,
+       0,     0,    82,    75,    76,     0,     0,     0,     0,     0,
+       0,    77,    78,     0,    79,     0,    83,    84,     0,     0,
+      80,     0,     0,     0,    85,     0,    81,    86,     0,    82,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,    79,    80,     0,     0,     0,     0,     0,     0,    81,
-       0,     0,    82,     0,    31,    64,    32,    65,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,    83,     0,     0,
-       0,    66,    67,     0,    10,     0,     0,    84,    85,     0,
-       0,    86,    87,    69,    70,     0,     0,     0,     0,     0,
-      88,    71,    72,     0,     0,     0,    89,     0,     0,    73,
-      74,    90,    75,     0,     0,     0,     0,     0,    76,     0,
-       0,     0,     0,   180,    77,     0,     0,    78,     0,     0,
+       0,     0,    87,    83,    84,     0,     0,     0,     0,     0,
+       0,    85,    88,    89,    86,     0,    90,    91,     0,     0,
+       0,     0,     0,     0,     0,    92,     0,     0,     0,    87,
+       0,    93,     0,     0,     0,     0,    94,     0,     0,    88,
+      89,     0,     0,    90,    91,     0,     0,    33,    68,    34,
+      69,     0,    92,   134,     0,     0,     0,     0,    93,     0,
+       0,     0,     0,    94,    70,    71,     0,     0,     1,     0,
+       2,     0,     0,     0,    33,    68,    34,    69,    73,    74,
+       0,     0,     0,     0,     0,     0,    75,    76,     0,     0,
+       0,    70,    71,     0,    77,    78,     0,    79,     0,     3,
+       0,     0,     0,    80,     0,    73,    74,     0,     0,    81,
+       0,     0,    82,    75,    76,     4,     5,     0,     0,     0,
+       0,    77,    78,     6,    79,     0,    83,    84,     7,     0,
+      80,     0,     0,     0,    85,   187,    81,    86,     0,    82,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     8,
+       0,     0,    87,    83,    84,     0,     0,     0,     0,    10,
+       0,    85,    88,    89,    86,     0,    90,    91,     0,     0,
+       0,     0,     0,     0,     9,    92,     0,     0,     0,    87,
+       0,    93,     0,    10,     0,     0,    94,     0,     0,    88,
+      89,     0,     0,    90,    91,     0,    11,    33,    68,    34,
+      69,     0,    92,    12,     0,     0,    13,     0,    93,     0,
+       0,     0,     0,   188,    70,   161,     0,     0,     0,     0,
+       0,     0,     0,     0,    33,    68,    34,    69,    73,    74,
+       0,     0,     0,     0,     0,     0,    75,    76,     0,     0,
+       0,    70,    71,     0,    77,    78,     0,    79,     0,     0,
+       0,     0,     0,    80,     0,    73,    74,     0,     0,    81,
+       0,     0,    82,    75,    76,     0,     0,     0,     0,     0,
+       0,    77,    78,     0,    79,     0,    83,    84,     0,     0,
+      80,     0,     0,     0,    85,     0,    81,    86,     0,    82,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,    79,    80,     0,     0,     0,     0,     0,     0,    81,
-       0,     0,    82,     0,    31,    64,    32,    65,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,    83,     0,     0,
-       0,    66,   155,     0,     0,     0,     0,    84,    85,     0,
-       0,    86,    87,    69,    70,     0,     0,     0,     0,     0,
-      88,    71,    72,     0,     0,     0,    89,     0,     0,    73,
-      74,   181,    75,     0,     0,     0,     0,     0,    76,     0,
-       0,     0,     0,     0,    77,     0,     0,    78,     0,     0,
+       0,     0,    87,    83,    84,     0,     0,    68,     0,    69,
+       0,    85,    88,    89,    86,     0,    90,    91,     0,     0,
+       0,     0,     0,    70,   161,    92,     0,     0,     0,    87,
+       0,    93,     0,     0,     0,     0,    94,    73,    74,    88,
+      89,     0,     0,    90,    91,     0,    76,     0,     0,     0,
+       0,     0,    92,    77,    78,     0,    79,     0,    93,     0,
+       0,     0,    80,    94,    73,    74,     0,     0,     0,     0,
+       0,    82,     0,    76,     0,     0,     0,     0,     0,     0,
+      77,    78,     0,    79,     0,    83,    84,     0,     0,    80,
+       0,     0,     0,    85,     0,     0,    86,     0,    82,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,    79,    80,     0,     0,     0,     0,     0,     0,    81,
-       0,     0,    82,     0,    31,    64,    32,    65,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,    83,     0,     0,
-       0,    66,    67,     0,     0,     0,     0,    84,    85,     0,
-       0,    86,    87,    69,    70,     0,     0,     0,     0,     0,
-      88,    71,    72,     0,     0,     0,    89,     0,     0,    73,
-      74,    90,    75,     0,     0,     0,     0,     0,    76,     0,
-       0,     0,     0,     0,    77,     0,     0,    78,     0,     0,
-       0,    69,    70,     0,     0,     0,     0,     0,     0,     0,
-      72,    79,    80,     0,     0,     0,     0,    73,    74,    81,
-      75,     0,    82,     0,     0,    64,    76,    65,     0,     0,
-       0,     0,     0,     0,     0,    78,     0,    83,     0,     0,
-       0,    66,   155,     0,     0,     0,     0,    84,    85,    79,
-     249,    86,    87,    69,    70,     0,     0,    81,     0,     0,
-      88,     0,    72,     0,     0,     0,    89,     0,     0,    73,
-      74,    90,    75,     0,     0,    83,     0,     0,    76,     0,
-       0,     0,     0,     0,     0,    84,     0,    78,     0,    86,
-      87,     0,     0,     0,     0,     0,     0,     0,    88,     0,
-       0,    79,    80,     0,    89,     0,     0,     0,     0,    81,
-       0,     0,    82,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,    83,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,    84,     0,     0,
-       0,    86,    87,     0,     0,     0,     0,     0,     0,     0,
-      88,     0,     0,     0,     0,     0,    89
+       0,    87,    83,   256,     0,     0,     0,     0,     0,     0,
+      85,    88,     0,     0,     0,    90,    91,     0,     0,     0,
+       0,     0,     0,     0,    92,     0,     0,     0,    87,     0,
+      93,     0,     0,     0,     0,     0,     0,     0,    88,     0,
+       0,     0,    90,    91,     0,     0,     0,     0,     0,     0,
+       0,    92,     0,     0,     0,     0,     0,    93
 };
 
 static const yytype_int16 yycheck[] =
 {
-       4,   120,    12,   188,   124,   142,    41,    11,    12,   128,
-       8,     0,   128,   110,   247,     8,     8,     8,    27,   226,
-       4,   210,     6,    37,    10,     4,    30,     6,     7,     7,
-      34,    35,    36,    37,    38,   215,    71,    26,     4,     4,
-       6,     6,    43,    23,    24,   142,    21,    22,     7,    10,
-      29,    21,    22,    21,    22,    90,    69,    43,    74,    78,
-     179,   119,   181,    21,    22,   181,    65,    53,   143,    70,
-      48,    21,    22,   210,    63,   169,   132,    60,    80,    17,
-      18,    19,   119,   180,   159,     9,    55,   143,    28,    48,
-     106,   137,    96,    62,   140,    94,    95,    21,    22,   109,
-     119,   136,   103,   292,   108,   109,    92,   111,   112,   144,
-     124,    71,   114,   210,   118,   119,   296,   103,    60,    59,
-     124,    71,   108,   158,   123,   126,   245,   141,   120,   142,
-     114,    92,   141,    44,    45,   342,   255,   256,   142,    77,
-     126,   326,    83,   147,   142,   120,   181,   125,   131,   142,
-     154,   142,    29,   157,   248,   292,   191,   141,   365,   194,
-     393,   368,   141,   348,   144,   169,   125,   171,   172,     1,
-     267,     3,   142,   131,   142,   141,   141,    51,   167,    35,
-      57,    66,    38,    39,    71,     4,     4,     6,     6,   131,
-     309,   226,   312,   309,   114,   292,   403,   232,    30,    21,
-      22,    86,    76,    21,    22,    72,   210,   211,     0,   129,
-      32,   215,    79,    31,    46,    47,    90,    91,    44,    45,
-      87,   141,    54,   360,   409,    72,   230,    59,    55,   134,
-     234,   266,    79,   268,    56,    62,     3,    84,   273,   113,
-      87,   245,   109,   340,   248,   280,     9,   366,    80,     4,
-     366,     6,   142,   143,   115,   375,   376,   143,    21,    22,
-     116,   135,   109,   360,   137,   106,   139,    31,   387,   141,
-     305,   112,    83,   105,   284,   142,    31,     5,   397,   141,
-     284,   397,   114,   142,   143,   142,   143,   104,   292,    21,
-      22,    95,   296,   142,   143,   127,   142,   143,   142,   143,
-     142,   143,   134,     7,   339,   137,     7,   342,   312,   142,
-     143,   142,   143,   142,   143,     5,   351,   142,   143,   142,
-     143,   142,   143,   132,    82,   329,   142,   143,   141,   448,
-     365,   141,   448,   368,   142,   143,    10,    11,    12,    13,
-      14,    15,    16,    17,    18,    19,   141,    21,    22,   142,
-     143,   142,   143,   142,   143,   141,   360,   142,   143,    82,
-       5,    71,   143,     4,     5,     6,     7,    98,   403,   141,
-     405,   375,   376,     7,   494,   134,   141,     7,     7,    11,
-      21,    22,    23,   387,   114,   142,     8,   422,   141,   141,
-       9,    61,    33,    34,   514,    20,   142,   142,    71,   143,
-      41,    42,   522,    77,    73,    99,   142,   442,    49,    50,
-      85,    52,   141,    85,   449,   141,    57,    58,   129,   128,
-     141,    61,     7,    64,    84,     7,    67,     7,    40,    97,
-     434,    97,    97,    75,    40,   142,   141,   441,    96,   141,
-      81,    82,     5,    27,   143,   134,   481,    85,    89,    92,
-     141,    92,   101,   141,   141,    92,   141,   101,    36,    40,
-      96,   465,   466,   141,    99,     7,   107,    95,   142,    40,
-      88,    19,   143,   477,     5,    40,   117,   118,   141,     7,
-     121,   122,   133,   142,   108,   489,   143,   491,   142,   130,
-     494,     4,     5,     6,     7,   136,    93,    10,   102,   110,
-     141,   142,   102,     9,    31,   110,    68,    68,    21,    22,
-     514,   100,     7,   466,   141,   141,   178,   332,   522,   142,
-      33,    34,   230,   109,   141,    51,   360,   491,    41,    42,
-     144,   479,   449,   255,   481,   525,    49,    50,   256,    52,
-     179,   148,   106,   153,   192,    58,   192,   130,   135,   409,
-      63,    64,   432,    -1,    67,    10,    11,    12,    13,    14,
-      15,    16,    17,    18,    19,    -1,    21,    22,    81,    82,
-      -1,    -1,    -1,    -1,    -1,    -1,    89,    -1,    -1,    92,
-      -1,     4,     5,     6,     7,    -1,    -1,    10,    -1,    -1,
-      -1,    -1,    -1,    -1,   107,    -1,    -1,    -1,    21,    22,
-      -1,   114,    -1,    -1,   117,   118,    -1,    -1,   121,   122,
-      33,    34,    -1,    -1,    -1,    -1,    -1,   130,    41,    42,
-      -1,    -1,    77,   136,    -1,    -1,    49,    50,   141,    52,
-      -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,
-      63,    64,    -1,    -1,    67,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    81,    82,
-      -1,    -1,    -1,    -1,    -1,    -1,    89,    -1,    -1,    92,
-      -1,     4,     5,     6,     7,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   107,    -1,    -1,    -1,    21,    22,
-      23,    -1,    -1,    -1,   117,   118,    -1,    -1,   121,   122,
-      33,    34,    -1,    -1,    -1,    -1,    -1,   130,    41,    42,
-      -1,    -1,    -1,   136,    -1,    -1,    49,    50,   141,    52,
-      -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,
-      -1,    64,    -1,    -1,    67,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    81,    82,
-      -1,    -1,    -1,    -1,    -1,    -1,    89,    -1,    -1,    92,
-      -1,     4,     5,     6,     7,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,   107,    -1,    -1,    -1,    21,    22,
-      -1,    -1,    -1,    -1,   117,   118,    -1,    -1,   121,   122,
-      33,    34,    -1,    -1,    -1,    -1,    -1,   130,    41,    42,
-      -1,    -1,    -1,   136,    -1,    -1,    49,    50,   141,    52,
-      -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,
-      -1,    64,    -1,    -1,    67,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    81,    82,
-      -1,    -1,    -1,    -1,    -1,    -1,    89,    -1,    -1,    92,
-      -1,    -1,    -1,    -1,     4,     5,     6,     7,    -1,    -1,
-      -1,    -1,    -1,    -1,   107,    -1,    -1,    -1,    -1,    -1,
-      -1,    21,    22,    -1,   117,   118,    -1,    -1,   121,   122,
-      -1,    -1,    -1,    33,    34,    -1,    -1,   130,   131,    -1,
-      -1,    41,    42,   136,    -1,    -1,    -1,    -1,   141,    49,
-      50,    -1,    52,    -1,    -1,    -1,    -1,    -1,    58,    -1,
-      -1,    -1,    -1,    -1,    64,    -1,    -1,    67,    -1,    -1,
+       4,   134,    12,   130,   148,   126,    43,    11,    12,   195,
+       8,   254,     8,   134,     8,     4,   114,     6,     7,     7,
+       7,   233,    27,     4,    45,     6,    29,     4,    32,     6,
+      23,    24,    36,    37,    38,    39,    40,    29,    75,    28,
+       4,    10,     6,   222,   176,    21,    22,    21,    22,    57,
+     148,    72,   217,     8,    80,   188,    71,    94,    31,    67,
+      82,   139,    50,    50,   142,   186,   121,   188,    21,    22,
+       4,    73,     6,   217,    10,    11,    12,    13,    14,    15,
+      16,    17,    18,    19,   105,    21,    22,    10,    61,   187,
+      39,   116,    21,    22,   116,   121,   100,    37,    76,    33,
+      40,    41,    62,   113,     9,   142,   131,   128,   112,   113,
+      62,   115,   116,   150,    28,   121,    21,    22,   143,   217,
+     124,   125,    45,   255,   303,    94,   130,   164,    85,   144,
+     108,   252,    55,   136,   299,   116,     0,   349,   143,   127,
+     127,   262,   263,    79,   148,    59,   144,   333,   144,   153,
+     144,   188,   144,   146,   143,   299,   160,   400,    30,   163,
+     372,   198,   143,   375,   201,   173,   143,   122,   144,   355,
+     144,    94,   176,   133,   178,   179,   274,   126,   118,   143,
+     133,   133,   105,   316,    74,     3,    67,   110,   149,    21,
+      22,    81,   319,   122,   143,   316,   233,    68,   410,    89,
+       0,   299,   239,    73,   165,   128,    53,     4,   144,     6,
+      17,    18,    19,   217,   218,    96,    97,    88,   222,   108,
+      74,   111,    57,   367,   117,   114,    26,    81,   134,    64,
+     416,    78,    86,   237,   145,    89,   273,   241,   275,   145,
+     373,    73,    33,   280,   125,    92,    93,     9,   252,   347,
+     287,   255,   373,   116,   144,   382,   383,   111,    57,    21,
+      22,    21,    22,   143,   139,    64,   141,   106,   115,   367,
+       5,   404,    79,   394,    34,   312,     4,    97,     6,    46,
+      47,   291,    85,   404,   143,    46,    47,   291,   144,   145,
+     137,   144,   145,    21,    22,   299,   144,   145,    58,   303,
+      21,    22,   144,   145,   134,    33,   144,   145,     7,   346,
+     144,   145,   349,   144,   145,   319,   144,   145,   144,   145,
+       7,   358,   455,   144,   145,   144,   145,   144,   145,   144,
+     145,   143,   336,    84,   455,   372,   144,   145,   375,    10,
+      11,    12,    13,    14,    15,    16,    17,    18,    19,   143,
+      21,    22,   144,   145,   144,   145,   144,   145,   144,   145,
+     144,   145,     5,   367,   143,   143,    84,     4,     5,     6,
+       7,     5,    73,   410,   501,   412,   145,   100,   382,   383,
+     143,     7,   136,     7,    21,    22,    23,   143,     7,    11,
+     394,   143,   429,   143,   521,     8,    63,     9,    35,    36,
+      20,   144,   529,    73,   144,   101,    43,    44,    79,   145,
+      75,   144,   449,   143,    51,    52,   143,    54,    87,   456,
+     130,    87,    59,    60,   143,   131,     7,    63,    86,    66,
+       7,    99,    69,     7,    42,    99,    99,   441,    77,    42,
+     144,    98,     5,   143,   448,   143,    83,    84,    27,    94,
+     145,   488,   136,   143,    91,    87,    94,    94,   143,   103,
+     143,   103,    42,    98,   143,    38,   143,     7,   472,   473,
+     101,   145,   109,     4,     5,     6,     7,    42,    19,    10,
+     484,    97,   119,   120,    90,     5,   123,   124,   143,    42,
+      21,    22,   496,   144,   498,   132,     7,   501,   145,   110,
+      95,   138,   135,   144,    35,    36,   143,   144,   104,     9,
+     112,   104,    43,    44,   143,    33,   143,   521,   143,    70,
+      51,    52,   112,    54,    70,   529,   102,   144,     7,    60,
+     339,   185,   473,   498,    65,    66,    53,   532,    69,    54,
+     237,   113,   367,   118,   486,   150,   456,   262,   110,   488,
+     263,   199,    83,    84,   154,     4,     5,     6,     7,   199,
+      91,    10,   159,    94,   416,   186,   136,    -1,    -1,    -1,
+     141,   439,    21,    22,    -1,    -1,    -1,    -1,   109,    -1,
+      -1,    -1,    -1,    -1,    -1,   116,    35,    36,   119,   120,
+      -1,    -1,   123,   124,    43,    44,    -1,    -1,    -1,    -1,
+      -1,   132,    51,    52,    -1,    54,    -1,   138,    -1,    -1,
+      -1,    60,   143,    -1,    -1,    -1,    65,    66,    -1,    -1,
+      69,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    83,    84,    -1,     4,     5,     6,
+       7,    -1,    91,    -1,    -1,    94,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    21,    22,    23,    -1,    -1,    -1,
+     109,    -1,    -1,    -1,     4,     5,     6,     7,    35,    36,
+     119,   120,    -1,    -1,   123,   124,    43,    44,    -1,    -1,
+      -1,    21,    22,   132,    51,    52,    -1,    54,    -1,   138,
+      -1,    -1,    -1,    60,   143,    35,    36,    -1,    -1,    66,
+      -1,    -1,    69,    43,    44,    -1,    -1,    -1,    -1,    -1,
+      -1,    51,    52,    -1,    54,    -1,    83,    84,    -1,    -1,
+      60,    -1,    -1,    -1,    91,    -1,    66,    94,    -1,    69,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    81,    82,    -1,    -1,    -1,    -1,    -1,    -1,    89,
-      -1,    -1,    92,    -1,     4,     5,     6,     7,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   107,    -1,    -1,
-      -1,    21,    22,    -1,   114,    -1,    -1,   117,   118,    -1,
-      -1,   121,   122,    33,    34,    -1,    -1,    -1,    -1,    -1,
-     130,    41,    42,    -1,    -1,    -1,   136,    -1,    -1,    49,
-      50,   141,    52,    -1,    -1,    -1,    -1,    -1,    58,    -1,
-      -1,    -1,    -1,    63,    64,    -1,    -1,    67,    -1,    -1,
+      -1,    -1,   109,    83,    84,    -1,    -1,    -1,    -1,    -1,
+      -1,    91,   119,   120,    94,    -1,   123,   124,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,   132,    -1,    -1,    -1,   109,
+      -1,   138,    -1,    -1,    -1,    -1,   143,    -1,    -1,   119,
+     120,    -1,    -1,   123,   124,    -1,    -1,     4,     5,     6,
+       7,    -1,   132,   133,    -1,    -1,    -1,    -1,   138,    -1,
+      -1,    -1,    -1,   143,    21,    22,    -1,    -1,     1,    -1,
+       3,    -1,    -1,    -1,     4,     5,     6,     7,    35,    36,
+      -1,    -1,    -1,    -1,    -1,    -1,    43,    44,    -1,    -1,
+      -1,    21,    22,    -1,    51,    52,    -1,    54,    -1,    32,
+      -1,    -1,    -1,    60,    -1,    35,    36,    -1,    -1,    66,
+      -1,    -1,    69,    43,    44,    48,    49,    -1,    -1,    -1,
+      -1,    51,    52,    56,    54,    -1,    83,    84,    61,    -1,
+      60,    -1,    -1,    -1,    91,    65,    66,    94,    -1,    69,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    82,
+      -1,    -1,   109,    83,    84,    -1,    -1,    -1,    -1,   116,
+      -1,    91,   119,   120,    94,    -1,   123,   124,    -1,    -1,
+      -1,    -1,    -1,    -1,   107,   132,    -1,    -1,    -1,   109,
+      -1,   138,    -1,   116,    -1,    -1,   143,    -1,    -1,   119,
+     120,    -1,    -1,   123,   124,    -1,   129,     4,     5,     6,
+       7,    -1,   132,   136,    -1,    -1,   139,    -1,   138,    -1,
+      -1,    -1,    -1,   143,    21,    22,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,     4,     5,     6,     7,    35,    36,
+      -1,    -1,    -1,    -1,    -1,    -1,    43,    44,    -1,    -1,
+      -1,    21,    22,    -1,    51,    52,    -1,    54,    -1,    -1,
+      -1,    -1,    -1,    60,    -1,    35,    36,    -1,    -1,    66,
+      -1,    -1,    69,    43,    44,    -1,    -1,    -1,    -1,    -1,
+      -1,    51,    52,    -1,    54,    -1,    83,    84,    -1,    -1,
+      60,    -1,    -1,    -1,    91,    -1,    66,    94,    -1,    69,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    81,    82,    -1,    -1,    -1,    -1,    -1,    -1,    89,
-      -1,    -1,    92,    -1,     4,     5,     6,     7,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   107,    -1,    -1,
-      -1,    21,    22,    -1,    -1,    -1,    -1,   117,   118,    -1,
-      -1,   121,   122,    33,    34,    -1,    -1,    -1,    -1,    -1,
-     130,    41,    42,    -1,    -1,    -1,   136,    -1,    -1,    49,
-      50,   141,    52,    -1,    -1,    -1,    -1,    -1,    58,    -1,
-      -1,    -1,    -1,    -1,    64,    -1,    -1,    67,    -1,    -1,
+      -1,    -1,   109,    83,    84,    -1,    -1,     5,    -1,     7,
+      -1,    91,   119,   120,    94,    -1,   123,   124,    -1,    -1,
+      -1,    -1,    -1,    21,    22,   132,    -1,    -1,    -1,   109,
+      -1,   138,    -1,    -1,    -1,    -1,   143,    35,    36,   119,
+     120,    -1,    -1,   123,   124,    -1,    44,    -1,    -1,    -1,
+      -1,    -1,   132,    51,    52,    -1,    54,    -1,   138,    -1,
+      -1,    -1,    60,   143,    35,    36,    -1,    -1,    -1,    -1,
+      -1,    69,    -1,    44,    -1,    -1,    -1,    -1,    -1,    -1,
+      51,    52,    -1,    54,    -1,    83,    84,    -1,    -1,    60,
+      -1,    -1,    -1,    91,    -1,    -1,    94,    -1,    69,    -1,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    81,    82,    -1,    -1,    -1,    -1,    -1,    -1,    89,
-      -1,    -1,    92,    -1,     4,     5,     6,     7,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   107,    -1,    -1,
-      -1,    21,    22,    -1,    -1,    -1,    -1,   117,   118,    -1,
-      -1,   121,   122,    33,    34,    -1,    -1,    -1,    -1,    -1,
-     130,    41,    42,    -1,    -1,    -1,   136,    -1,    -1,    49,
-      50,   141,    52,    -1,    -1,    -1,    -1,    -1,    58,    -1,
-      -1,    -1,    -1,    -1,    64,    -1,    -1,    67,    -1,    -1,
-      -1,    33,    34,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      42,    81,    82,    -1,    -1,    -1,    -1,    49,    50,    89,
-      52,    -1,    92,    -1,    -1,     5,    58,     7,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    67,    -1,   107,    -1,    -1,
-      -1,    21,    22,    -1,    -1,    -1,    -1,   117,   118,    81,
-      82,   121,   122,    33,    34,    -1,    -1,    89,    -1,    -1,
-     130,    -1,    42,    -1,    -1,    -1,   136,    -1,    -1,    49,
-      50,   141,    52,    -1,    -1,   107,    -1,    -1,    58,    -1,
-      -1,    -1,    -1,    -1,    -1,   117,    -1,    67,    -1,   121,
-     122,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   130,    -1,
-      -1,    81,    82,    -1,   136,    -1,    -1,    -1,    -1,    89,
-      -1,    -1,    92,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   107,    -1,    -1,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,   117,    -1,    -1,
-      -1,   121,   122,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     130,    -1,    -1,    -1,    -1,    -1,   136
+      -1,   109,    83,    84,    -1,    -1,    -1,    -1,    -1,    -1,
+      91,   119,    -1,    -1,    -1,   123,   124,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,   132,    -1,    -1,    -1,   109,    -1,
+     138,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   119,    -1,
+      -1,    -1,   123,   124,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,   132,    -1,    -1,    -1,    -1,    -1,   138
 };
 
   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
      symbol of state STATE-NUM.  */
 static const yytype_uint8 yystos[] =
 {
-       0,     1,     3,    30,    46,    47,    54,    59,    80,   105,
-     114,   127,   134,   137,   146,   147,   148,   149,   150,   151,
-     152,   173,   174,   177,   178,   181,   183,   186,   250,   251,
-     119,     4,     6,   248,    78,   119,    71,   119,    83,    29,
-      57,   187,   248,   184,   185,   198,   248,     0,   137,   139,
-      80,   186,   134,   182,   137,   140,     3,   248,    71,   248,
-     248,   248,   248,   248,     5,     7,    21,    22,    23,    33,
-      34,    41,    42,    49,    50,    52,    58,    64,    67,    81,
-      82,    89,    92,   107,   117,   118,   121,   122,   130,   136,
-     141,   155,   188,   189,   190,   192,   224,   225,   226,   227,
-     228,   229,   230,   231,   238,   241,   244,   248,   115,   143,
-      31,   141,    83,   182,   104,    28,    59,     5,    95,   141,
-     132,   218,   219,   129,   141,   186,     7,     7,   131,   224,
-     234,   235,   141,    82,   141,     5,   141,   141,    82,   186,
-     224,     5,    71,   191,   143,    21,    22,    31,   245,   248,
-      23,    24,   144,   246,    98,    22,   227,    27,   141,   179,
-     180,   248,   185,   141,   192,   247,   248,   248,     7,    44,
-      45,    44,    45,   134,   175,   248,   153,   154,   248,    10,
-      63,   141,   220,   221,   222,   223,   224,   241,   141,   247,
-     220,   131,   232,   233,    60,   235,   236,     7,    51,    76,
-      90,    91,   113,   135,   239,   239,   224,     7,   142,   142,
-     141,   192,   195,   196,   199,   228,   248,   218,   190,   248,
-     225,   226,   141,   248,   248,    23,    57,   142,   224,   237,
-     143,   218,    11,   142,   143,   186,   153,    43,    70,   103,
-     126,   159,   248,   248,   141,   141,   162,   142,   143,    82,
-     155,   223,   192,   220,   224,     8,     9,    10,    11,    12,
-      13,    14,    15,    16,    17,    18,    19,    77,   243,    20,
-     238,   240,   142,   120,   224,   233,   236,   224,    61,   142,
-      71,    71,   142,   195,    31,   197,   198,    72,    79,    87,
-     109,   194,   143,   197,    37,   124,   193,    73,   200,    99,
-     207,   208,   142,   237,   142,   143,   180,   224,   248,   141,
-      85,    85,   141,    55,    62,   176,   241,   242,   248,   128,
-     159,   160,   161,   153,    10,    43,    53,    92,   103,   108,
-     126,   156,   157,   158,   142,   221,   222,    17,    18,    19,
-      77,   224,   141,   192,   224,    10,    92,   142,   143,   129,
-     224,   120,    61,   224,     7,   142,   198,    97,    97,    97,
-      84,   195,     7,     7,   197,    40,    75,   201,    40,   142,
-      96,   209,   142,   224,   220,   141,   141,   247,     5,    65,
-      94,    95,   123,   249,   142,   143,   142,   143,    35,    38,
-      39,   116,   171,   143,   134,   163,    92,   141,   238,    85,
-     248,   156,   224,   141,   192,     9,   237,    92,   238,   141,
-     224,   142,    69,   142,   196,   101,   101,   237,   220,    96,
-     202,   237,    40,   106,   112,   210,   211,   142,   247,   247,
-     142,    55,    62,   241,   141,   172,   159,    36,    99,   164,
-     220,   141,     9,   237,   224,   142,   240,     7,    95,    40,
-      88,   203,   214,   215,   224,    19,   142,   142,     5,   249,
-     166,   167,   168,   169,   170,   248,   141,    40,   142,   248,
-     224,   142,   142,   142,   220,   214,     7,   133,   204,   205,
-     206,   143,    32,    56,   216,     7,    48,   125,   212,   108,
-     142,   143,     7,    29,   141,   248,   166,    74,   106,   165,
-     142,   248,   206,   215,    93,   217,   102,   110,   102,     9,
-     248,   167,   247,   142,   141,    31,    66,    86,     7,    48,
-     125,   213,   141,   142,   247,   141,    68,   110,    68,   247,
-     142,   207,   142,   100,   142,     7
+       0,     1,     3,    32,    48,    49,    56,    61,    82,   107,
+     116,   129,   136,   139,   148,   149,   150,   151,   152,   153,
+     154,   175,   176,   179,   180,   183,   185,   188,   189,   190,
+     254,   255,   121,     4,     6,   252,    80,   121,    73,   121,
+      85,    28,    59,   191,   252,   186,   187,   202,   252,     0,
+     139,   141,    82,   188,    29,   136,   184,    30,   139,   142,
+       3,   252,    73,   252,   252,   252,   252,   252,     5,     7,
+      21,    22,    23,    35,    36,    43,    44,    51,    52,    54,
+      60,    66,    69,    83,    84,    91,    94,   109,   119,   120,
+     123,   124,   132,   138,   143,   157,   192,   193,   194,   196,
+     228,   229,   230,   231,   232,   233,   234,   235,   242,   245,
+     248,   252,   117,   145,    33,   143,    85,   184,   191,   106,
+     190,    31,    61,     5,    97,   143,   134,   222,   223,   131,
+     143,   190,     7,     7,   133,   228,   238,   239,   143,    84,
+     143,     5,   143,   143,    84,   188,   228,     5,    73,   195,
+     145,    21,    22,    33,   249,   252,    23,    24,   146,   250,
+     100,    22,   231,    27,   143,   181,   182,   252,   187,   143,
+     196,   251,   252,   252,   189,     7,    46,    47,    46,    47,
+     136,   177,   252,   155,   156,   252,    10,    65,   143,   224,
+     225,   226,   227,   228,   245,   143,   251,   224,   133,   236,
+     237,    62,   239,   240,     7,    53,    78,    92,    93,   115,
+     137,   243,   243,   228,     7,   144,   144,   143,   196,   199,
+     200,   203,   232,   252,   222,   194,   252,   229,   230,   143,
+     252,   252,    23,    59,   144,   228,   241,   145,   222,    11,
+     144,   145,   190,   155,    45,    72,   105,   128,   161,   252,
+     252,   143,   143,   164,   144,   145,    84,   157,   227,   196,
+     224,   228,     8,     9,    10,    11,    12,    13,    14,    15,
+      16,    17,    18,    19,    79,   247,    20,   242,   244,   144,
+     122,   228,   237,   240,   228,    63,   144,    73,    73,   144,
+     199,    33,   201,   202,    74,    81,    89,   111,   198,   145,
+     201,    39,   126,   197,    75,   204,   101,   211,   212,   144,
+     241,   144,   145,   182,   228,   252,   143,    87,    87,   143,
+      57,    64,   178,   245,   246,   252,   130,   161,   162,   163,
+     155,    10,    45,    55,    94,   105,   110,   128,   158,   159,
+     160,   144,   225,   226,    17,    18,    19,    79,   228,   143,
+     196,   228,    10,    94,   144,   145,   131,   228,   122,    63,
+     228,     7,   144,   202,    99,    99,    99,    86,   199,     7,
+       7,   201,    42,    77,   205,    42,   144,    98,   213,   144,
+     228,   224,   143,   143,   251,     5,    67,    96,    97,   125,
+     253,   144,   145,   144,   145,    37,    40,    41,   118,   173,
+     145,   136,   165,    94,   143,   242,    87,   252,   158,   228,
+     143,   196,     9,   241,    94,   242,   143,   228,   144,    71,
+     144,   200,   103,   103,   241,   224,    98,   206,   241,    42,
+     108,   114,   214,   215,   144,   251,   251,   144,    57,    64,
+     245,   143,   174,   161,    38,   101,   166,   224,   143,     9,
+     241,   228,   144,   244,     7,    97,    42,    90,   207,   218,
+     219,   228,    19,   144,   144,     5,   253,   168,   169,   170,
+     171,   172,   252,   143,    42,   144,   252,   228,   144,   144,
+     144,   224,   218,     7,   135,   208,   209,   210,   145,    34,
+      58,   220,     7,    50,   127,   216,   110,   144,   145,     7,
+      28,   143,   252,   168,    76,   108,   167,   144,   252,   210,
+     219,    95,   221,   104,   112,   104,     9,   252,   169,   251,
+     144,   143,    33,    68,    88,     7,    50,   127,   217,   143,
+     144,   251,   143,    70,   112,    70,   251,   144,   211,   144,
+     102,   144,     7
 };
 
   /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
 static const yytype_uint8 yyr1[] =
 {
-       0,   145,   146,   146,   146,   146,   146,   146,   147,   147,
-     147,   147,   147,   147,   147,   147,   147,   147,   148,   149,
-     149,   149,   149,   150,   151,   152,   153,   154,   154,   155,
-     155,   155,   155,   155,   155,   155,   155,   155,   155,   155,
-     155,   155,   155,   155,   155,   155,   155,   156,   156,   156,
-     156,   156,   156,   156,   157,   157,   158,   158,   159,   159,
-     159,   159,   160,   160,   161,   161,   162,   162,   163,   163,
-     164,   164,   165,   165,   166,   166,   167,   167,   167,   168,
-     168,   169,   170,   171,   171,   171,   171,   172,   172,   173,
-     173,   173,   173,   174,   175,   175,   176,   176,   176,   176,
-     177,   178,   179,   179,   180,   181,   181,   182,   182,   183,
-     184,   184,   185,   186,   187,   187,   187,   188,   188,   189,
-     189,   190,   190,   190,   191,   192,   193,   193,   193,   194,
-     194,   194,   194,   194,   194,   194,   194,   195,   195,   196,
-     196,   196,   196,   196,   196,   197,   197,   198,   198,   199,
-     199,   200,   200,   201,   201,   202,   202,   203,   203,   204,
-     204,   205,   205,   206,   207,   208,   208,   209,   209,   210,
-     210,   211,   211,   212,   212,   212,   213,   213,   213,   214,
-     214,   215,   216,   216,   216,   217,   217,   217,   218,   218,
-     219,   220,   220,   221,   221,   222,   222,   223,   223,   223,
-     223,   223,   223,   223,   223,   223,   223,   223,   224,   224,
-     225,   225,   226,   226,   227,   227,   227,   227,   227,   227,
-     227,   227,   227,   227,   228,   228,   228,   228,   229,   230,
-     230,   231,   231,   232,   232,   233,   234,   234,   235,   236,
-     236,   237,   237,   238,   238,   238,   238,   238,   238,   238,
-     238,   239,   239,   239,   239,   239,   239,   240,   240,   241,
-     241,   242,   242,   243,   243,   243,   243,   243,   243,   243,
-     243,   243,   243,   244,   245,   245,   246,   246,   246,   247,
-     247,   248,   248,   249,   249,   249,   249,   250,   251,   251
+       0,   147,   148,   148,   148,   148,   148,   148,   149,   149,
+     149,   149,   149,   149,   149,   149,   149,   149,   150,   151,
+     151,   151,   151,   152,   153,   154,   155,   156,   156,   157,
+     157,   157,   157,   157,   157,   157,   157,   157,   157,   157,
+     157,   157,   157,   157,   157,   157,   157,   158,   158,   158,
+     158,   158,   158,   158,   159,   159,   160,   160,   161,   161,
+     161,   161,   162,   162,   163,   163,   164,   164,   165,   165,
+     166,   166,   167,   167,   168,   168,   169,   169,   169,   170,
+     170,   171,   172,   173,   173,   173,   173,   174,   174,   175,
+     175,   175,   175,   176,   177,   177,   178,   178,   178,   178,
+     179,   180,   181,   181,   182,   183,   183,   184,   184,   185,
+     186,   186,   187,   188,   188,   189,   189,   190,   191,   191,
+     191,   192,   192,   193,   193,   194,   194,   194,   195,   196,
+     197,   197,   197,   198,   198,   198,   198,   198,   198,   198,
+     198,   199,   199,   200,   200,   200,   200,   200,   200,   201,
+     201,   202,   202,   203,   203,   204,   204,   205,   205,   206,
+     206,   207,   207,   208,   208,   209,   209,   210,   211,   212,
+     212,   213,   213,   214,   214,   215,   215,   216,   216,   216,
+     217,   217,   217,   218,   218,   219,   220,   220,   220,   221,
+     221,   221,   222,   222,   223,   224,   224,   225,   225,   226,
+     226,   227,   227,   227,   227,   227,   227,   227,   227,   227,
+     227,   227,   228,   228,   229,   229,   230,   230,   231,   231,
+     231,   231,   231,   231,   231,   231,   231,   231,   232,   232,
+     232,   232,   233,   234,   234,   235,   235,   236,   236,   237,
+     238,   238,   239,   240,   240,   241,   241,   242,   242,   242,
+     242,   242,   242,   242,   242,   243,   243,   243,   243,   243,
+     243,   244,   244,   245,   245,   246,   246,   247,   247,   247,
+     247,   247,   247,   247,   247,   247,   247,   248,   249,   249,
+     250,   250,   250,   251,   251,   252,   252,   253,   253,   253,
+     253,   254,   255,   255
 };
 
   /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
@@ -1456,24 +1441,25 @@
        2,     4,     2,     1,     1,     1,     1,     0,     3,    10,
        7,     4,     5,     5,     0,     4,     2,     2,     4,     4,
        5,     4,     3,     1,     3,     2,     3,     0,     3,     2,
-       1,     3,     3,    10,     0,     1,     1,     1,     1,     1,
-       3,     3,     2,     1,     2,     3,     0,     3,     3,     0,
-       1,     1,     2,     1,     2,     1,     2,     6,     1,     2,
-       3,     2,     2,     1,     3,     1,     2,     1,     4,     1,
-       3,     0,     3,     0,     2,     0,     3,     0,     2,     0,
-       1,     1,     2,     6,     3,     0,     3,     0,     3,     0,
-       5,     1,     1,     2,     2,     2,     2,     2,     2,     1,
-       3,     3,     0,     1,     1,     0,     2,     2,     0,     1,
-       2,     3,     1,     3,     1,     2,     1,     5,     6,     4,
-       3,     3,     3,     2,     3,     5,     4,     6,     3,     1,
-       3,     1,     2,     1,     1,     1,     1,     3,     5,     1,
-       1,     1,     3,     1,     3,     4,     4,     5,     6,     6,
-       8,     5,     4,     1,     2,     4,     1,     2,     4,     0,
-       2,     1,     3,     1,     1,     2,     2,     1,     2,     3,
-       2,     1,     1,     1,     1,     1,     1,     1,     3,     1,
-       3,     1,     3,     1,     1,     1,     1,     1,     1,     1,
-       2,     1,     2,     1,     1,     1,     1,     1,     1,     1,
-       3,     1,     1,     1,     1,     1,     1,     2,     2,     0
+       1,     3,     3,     4,     1,     3,     1,    10,     0,     1,
+       1,     1,     1,     1,     3,     3,     2,     1,     2,     3,
+       0,     3,     3,     0,     1,     1,     2,     1,     2,     1,
+       2,     6,     1,     2,     3,     2,     2,     1,     3,     1,
+       2,     1,     4,     1,     3,     0,     3,     0,     2,     0,
+       3,     0,     2,     0,     1,     1,     2,     6,     3,     0,
+       3,     0,     3,     0,     5,     1,     1,     2,     2,     2,
+       2,     2,     2,     1,     3,     3,     0,     1,     1,     0,
+       2,     2,     0,     1,     2,     3,     1,     3,     1,     2,
+       1,     5,     6,     4,     3,     3,     3,     2,     3,     5,
+       4,     6,     3,     1,     3,     1,     2,     1,     1,     1,
+       1,     3,     5,     1,     1,     1,     3,     1,     3,     4,
+       4,     5,     6,     6,     8,     5,     4,     1,     2,     4,
+       1,     2,     4,     0,     2,     1,     3,     1,     1,     2,
+       2,     1,     2,     3,     2,     1,     1,     1,     1,     1,
+       1,     1,     3,     1,     3,     1,     3,     1,     1,     1,
+       1,     1,     1,     1,     2,     1,     2,     1,     1,     1,
+       1,     1,     1,     1,     3,     1,     1,     1,     1,     1,
+       1,     2,     2,     0
 };
 
 
@@ -1970,1035 +1956,1061 @@
   switch (yytype)
     {
           case 3: /* TOKEN_COMMAND  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).string_value_) != nullptr) {
     delete ((*yyvaluep).string_value_);
   }
 }
-#line 1980 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 1966 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
     case 4: /* TOKEN_NAME  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).string_value_) != nullptr) {
     delete ((*yyvaluep).string_value_);
   }
 }
-#line 1990 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 1976 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
     case 5: /* TOKEN_STRING_SINGLE_QUOTED  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).string_value_) != nullptr) {
     delete ((*yyvaluep).string_value_);
   }
 }
-#line 2000 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 1986 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
     case 6: /* TOKEN_STRING_DOUBLE_QUOTED  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).string_value_) != nullptr) {
     delete ((*yyvaluep).string_value_);
   }
 }
-#line 2010 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 1996 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
     case 7: /* TOKEN_UNSIGNED_NUMVAL  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).numeric_literal_value_) != nullptr) {
     delete ((*yyvaluep).numeric_literal_value_);
   }
 }
-#line 2020 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2006 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 147: /* sql_statement  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 149: /* sql_statement  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).statement_) != nullptr) {
     delete ((*yyvaluep).statement_);
   }
 }
-#line 2030 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2016 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 148: /* quit_statement  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 150: /* quit_statement  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).quit_statement_) != nullptr) {
     delete ((*yyvaluep).quit_statement_);
   }
 }
-#line 2040 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2026 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 149: /* alter_table_statement  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 151: /* alter_table_statement  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).statement_) != nullptr) {
     delete ((*yyvaluep).statement_);
   }
 }
-#line 2050 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2036 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 150: /* create_table_statement  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 152: /* create_table_statement  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).create_table_statement_) != nullptr) {
     delete ((*yyvaluep).create_table_statement_);
   }
 }
-#line 2060 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2046 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 151: /* create_index_statement  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 153: /* create_index_statement  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).statement_) != nullptr) {
     delete ((*yyvaluep).statement_);
   }
 }
-#line 2070 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2056 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 152: /* drop_table_statement  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 154: /* drop_table_statement  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).drop_table_statement_) != nullptr) {
     delete ((*yyvaluep).drop_table_statement_);
   }
 }
-#line 2080 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2066 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 153: /* column_def  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 155: /* column_def  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).attribute_definition_) != nullptr) {
     delete ((*yyvaluep).attribute_definition_);
   }
 }
-#line 2090 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2076 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 154: /* column_def_commalist  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 156: /* column_def_commalist  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).attribute_definition_list_) != nullptr) {
     delete ((*yyvaluep).attribute_definition_list_);
   }
 }
-#line 2100 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2086 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 155: /* data_type  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 157: /* data_type  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).data_type_) != nullptr) {
     delete ((*yyvaluep).data_type_);
   }
 }
-#line 2110 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2096 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 156: /* column_constraint_def  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 158: /* column_constraint_def  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).column_constraint_) != nullptr) {
     delete ((*yyvaluep).column_constraint_);
   }
 }
-#line 2120 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2106 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 157: /* column_constraint_def_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 159: /* column_constraint_def_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).column_constraint_list_) != nullptr) {
     delete ((*yyvaluep).column_constraint_list_);
   }
 }
-#line 2130 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2116 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 158: /* opt_column_constraint_def_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 160: /* opt_column_constraint_def_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).column_constraint_list_) != nullptr) {
     delete ((*yyvaluep).column_constraint_list_);
   }
 }
-#line 2140 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2126 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 162: /* opt_column_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 164: /* opt_column_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).attribute_list_) != nullptr) {
     delete ((*yyvaluep).attribute_list_);
   }
 }
-#line 2150 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2136 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 163: /* opt_block_properties  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 165: /* opt_block_properties  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).block_properties_) != nullptr) {
     delete ((*yyvaluep).block_properties_);
   }
 }
-#line 2160 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2146 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 164: /* opt_partition_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 166: /* opt_partition_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).partition_clause_) != nullptr) {
     delete ((*yyvaluep).partition_clause_);
   }
 }
-#line 2170 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2156 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 165: /* partition_type  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 167: /* partition_type  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).string_value_) != nullptr) {
     delete ((*yyvaluep).string_value_);
   }
 }
-#line 2180 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2166 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 166: /* key_value_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 168: /* key_value_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).key_value_list_) != nullptr) {
     delete ((*yyvaluep).key_value_list_);
   }
 }
-#line 2190 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2176 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 167: /* key_value  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 169: /* key_value  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).key_value_) != nullptr) {
     delete ((*yyvaluep).key_value_);
   }
 }
-#line 2200 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2186 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 168: /* key_string_value  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 170: /* key_string_value  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).key_string_value_) != nullptr) {
     delete ((*yyvaluep).key_string_value_);
   }
 }
-#line 2210 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2196 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 169: /* key_string_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 171: /* key_string_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).key_string_list_) != nullptr) {
     delete ((*yyvaluep).key_string_list_);
   }
 }
-#line 2220 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2206 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 170: /* key_integer_value  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 172: /* key_integer_value  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).key_integer_value_) != nullptr) {
     delete ((*yyvaluep).key_integer_value_);
   }
 }
-#line 2230 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2216 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 171: /* index_type  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 173: /* index_type  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).string_value_) != nullptr) {
     delete ((*yyvaluep).string_value_);
   }
 }
-#line 2240 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2226 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 172: /* opt_index_properties  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 174: /* opt_index_properties  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).key_value_list_) != nullptr) {
     delete ((*yyvaluep).key_value_list_);
   }
 }
-#line 2250 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2236 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 173: /* insert_statement  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 175: /* insert_statement  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).insert_statement_) != nullptr) {
     delete ((*yyvaluep).insert_statement_);
   }
 }
-#line 2260 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2246 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 174: /* copy_from_statement  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 176: /* copy_from_statement  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).copy_from_statement_) != nullptr) {
     delete ((*yyvaluep).copy_from_statement_);
   }
 }
-#line 2270 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2256 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 175: /* opt_copy_from_params  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 177: /* opt_copy_from_params  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).copy_from_params_) != nullptr) {
     delete ((*yyvaluep).copy_from_params_);
   }
 }
-#line 2280 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2266 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 176: /* copy_from_params  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 178: /* copy_from_params  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).copy_from_params_) != nullptr) {
     delete ((*yyvaluep).copy_from_params_);
   }
 }
-#line 2290 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2276 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 177: /* update_statement  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 179: /* update_statement  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).update_statement_) != nullptr) {
     delete ((*yyvaluep).update_statement_);
   }
 }
-#line 2300 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2286 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 178: /* delete_statement  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 180: /* delete_statement  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).delete_statement_) != nullptr) {
     delete ((*yyvaluep).delete_statement_);
   }
 }
-#line 2310 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2296 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 179: /* assignment_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 181: /* assignment_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).assignment_list_) != nullptr) {
     delete ((*yyvaluep).assignment_list_);
   }
 }
-#line 2320 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2306 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 180: /* assignment_item  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 182: /* assignment_item  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).assignment_) != nullptr) {
     delete ((*yyvaluep).assignment_);
   }
 }
-#line 2330 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2316 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 181: /* select_statement  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 183: /* set_operation_statement  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
-  if (((*yyvaluep).select_statement_) != nullptr) {
-    delete ((*yyvaluep).select_statement_);
+  if (((*yyvaluep).set_operation_statement_) != nullptr) {
+    delete ((*yyvaluep).set_operation_statement_);
   }
 }
-#line 2340 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2326 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 182: /* opt_priority_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 184: /* opt_priority_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).opt_priority_clause_) != nullptr) {
     delete ((*yyvaluep).opt_priority_clause_);
   }
 }
-#line 2350 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2336 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 183: /* with_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 185: /* with_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).with_list_) != nullptr) {
     delete ((*yyvaluep).with_list_);
   }
 }
-#line 2360 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2346 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 184: /* with_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 186: /* with_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).with_list_) != nullptr) {
     delete ((*yyvaluep).with_list_);
   }
 }
-#line 2370 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2356 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 185: /* with_list_element  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 187: /* with_list_element  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).with_list_element_) != nullptr) {
     delete ((*yyvaluep).with_list_element_);
   }
 }
-#line 2380 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2366 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 186: /* select_query  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 188: /* set_operation_union  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
+      {
+  if (((*yyvaluep).set_operation_) != nullptr) {
+    delete ((*yyvaluep).set_operation_);
+  }
+}
+#line 2376 "SqlParser_gen.cpp" /* yacc.c:1257  */
+        break;
+
+    case 189: /* set_operation_intersect  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
+      {
+  if (((*yyvaluep).set_operation_) != nullptr) {
+    delete ((*yyvaluep).set_operation_);
+  }
+}
+#line 2386 "SqlParser_gen.cpp" /* yacc.c:1257  */
+        break;
+
+    case 190: /* select_query  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).select_query_) != nullptr) {
     delete ((*yyvaluep).select_query_);
   }
 }
-#line 2390 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2396 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 188: /* selection  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 191: /* opt_all_distinct  */
+#line 624 "../SqlParser.ypp" /* yacc.c:1257  */
+      { }
+#line 2402 "SqlParser_gen.cpp" /* yacc.c:1257  */
+        break;
+
+    case 192: /* selection  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).selection_) != nullptr) {
     delete ((*yyvaluep).selection_);
   }
 }
-#line 2400 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2412 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 189: /* selection_item_commalist  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 193: /* selection_item_commalist  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).selection_list_) != nullptr) {
     delete ((*yyvaluep).selection_list_);
   }
 }
-#line 2410 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2422 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 190: /* selection_item  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 194: /* selection_item  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).selection_item_) != nullptr) {
     delete ((*yyvaluep).selection_item_);
   }
 }
-#line 2420 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2432 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 191: /* from_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 195: /* from_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).table_reference_list_) != nullptr) {
     delete ((*yyvaluep).table_reference_list_);
   }
 }
-#line 2430 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2442 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 192: /* subquery_expression  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 196: /* subquery_expression  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).subquery_expression_) != nullptr) {
     delete ((*yyvaluep).subquery_expression_);
   }
 }
-#line 2440 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2452 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 193: /* opt_sample_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 197: /* opt_sample_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).opt_sample_clause_) != nullptr) {
     delete ((*yyvaluep).opt_sample_clause_);
   }
 }
-#line 2450 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2462 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 194: /* join_type  */
-#line 618 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 198: /* join_type  */
+#line 628 "../SqlParser.ypp" /* yacc.c:1257  */
       { }
-#line 2456 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2468 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 195: /* joined_table_reference  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 199: /* joined_table_reference  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).table_reference_) != nullptr) {
     delete ((*yyvaluep).table_reference_);
   }
 }
-#line 2466 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2478 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 196: /* table_reference  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 200: /* table_reference  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).table_reference_) != nullptr) {
     delete ((*yyvaluep).table_reference_);
   }
 }
-#line 2476 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2488 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 197: /* table_reference_signature  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 201: /* table_reference_signature  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).table_reference_signature_) != nullptr) {
     delete ((*yyvaluep).table_reference_signature_);
   }
 }
-#line 2486 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2498 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 198: /* table_reference_signature_primary  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 202: /* table_reference_signature_primary  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).table_reference_signature_) != nullptr) {
     delete ((*yyvaluep).table_reference_signature_);
   }
 }
-#line 2496 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2508 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 199: /* joined_table_reference_commalist  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 203: /* joined_table_reference_commalist  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).table_reference_list_) != nullptr) {
     delete ((*yyvaluep).table_reference_list_);
   }
 }
-#line 2506 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2518 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 200: /* opt_group_by_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 204: /* opt_group_by_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).opt_group_by_clause_) != nullptr) {
     delete ((*yyvaluep).opt_group_by_clause_);
   }
 }
-#line 2516 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2528 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 201: /* opt_having_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 205: /* opt_having_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).opt_having_clause_) != nullptr) {
     delete ((*yyvaluep).opt_having_clause_);
   }
 }
-#line 2526 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2538 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 202: /* opt_order_by_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 206: /* opt_order_by_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).opt_order_by_clause_) != nullptr) {
     delete ((*yyvaluep).opt_order_by_clause_);
   }
 }
-#line 2536 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2548 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 203: /* opt_limit_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 207: /* opt_limit_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).opt_limit_clause_) != nullptr) {
     delete ((*yyvaluep).opt_limit_clause_);
   }
 }
-#line 2546 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2558 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 204: /* opt_window_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 208: /* opt_window_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).opt_window_clause_) != nullptr) {
     delete ((*yyvaluep).opt_window_clause_);
   }
 }
-#line 2556 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2568 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 205: /* window_declaration_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 209: /* window_declaration_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).opt_window_clause_) != nullptr) {
     delete ((*yyvaluep).opt_window_clause_);
   }
 }
-#line 2566 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2578 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 206: /* window_declaration  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 210: /* window_declaration  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).window_definition_) != nullptr) {
     delete ((*yyvaluep).window_definition_);
   }
 }
-#line 2576 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2588 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 207: /* window_definition  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 211: /* window_definition  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).window_definition_) != nullptr) {
     delete ((*yyvaluep).window_definition_);
   }
 }
-#line 2586 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2598 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 208: /* opt_window_partition  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 212: /* opt_window_partition  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).window_partition_by_list_) != nullptr) {
     delete ((*yyvaluep).window_partition_by_list_);
   }
 }
-#line 2596 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2608 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 209: /* opt_window_order  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 213: /* opt_window_order  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).window_order_by_list_) != nullptr) {
     delete ((*yyvaluep).window_order_by_list_);
   }
 }
-#line 2606 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2618 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 210: /* opt_window_frame  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 214: /* opt_window_frame  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).window_frame_info_) != nullptr) {
     delete ((*yyvaluep).window_frame_info_);
   }
 }
-#line 2616 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2628 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 211: /* frame_mode  */
-#line 614 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 215: /* frame_mode  */
+#line 624 "../SqlParser.ypp" /* yacc.c:1257  */
       { }
-#line 2622 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2634 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 212: /* frame_preceding  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 216: /* frame_preceding  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).numeric_literal_value_) != nullptr) {
     delete ((*yyvaluep).numeric_literal_value_);
   }
 }
-#line 2632 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2644 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 213: /* frame_following  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 217: /* frame_following  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).numeric_literal_value_) != nullptr) {
     delete ((*yyvaluep).numeric_literal_value_);
   }
 }
-#line 2642 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2654 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 214: /* order_commalist  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 218: /* order_commalist  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).order_commalist_) != nullptr) {
     delete ((*yyvaluep).order_commalist_);
   }
 }
-#line 2652 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2664 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 215: /* order_item  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 219: /* order_item  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).order_item_) != nullptr) {
     delete ((*yyvaluep).order_item_);
   }
 }
-#line 2662 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2674 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 216: /* opt_order_direction  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 220: /* opt_order_direction  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).order_direction_) != nullptr) {
     delete ((*yyvaluep).order_direction_);
   }
 }
-#line 2672 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2684 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 217: /* opt_nulls_first  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 221: /* opt_nulls_first  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).order_direction_) != nullptr) {
     delete ((*yyvaluep).order_direction_);
   }
 }
-#line 2682 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2694 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 218: /* opt_where_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 222: /* opt_where_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).predicate_) != nullptr) {
     delete ((*yyvaluep).predicate_);
   }
 }
-#line 2692 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2704 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 219: /* where_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 223: /* where_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).predicate_) != nullptr) {
     delete ((*yyvaluep).predicate_);
   }
 }
-#line 2702 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2714 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 220: /* or_expression  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 224: /* or_expression  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).predicate_) != nullptr) {
     delete ((*yyvaluep).predicate_);
   }
 }
-#line 2712 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2724 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 221: /* and_expression  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 225: /* and_expression  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).predicate_) != nullptr) {
     delete ((*yyvaluep).predicate_);
   }
 }
-#line 2722 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2734 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 222: /* not_expression  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 226: /* not_expression  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).predicate_) != nullptr) {
     delete ((*yyvaluep).predicate_);
   }
 }
-#line 2732 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2744 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 223: /* predicate_expression_base  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 227: /* predicate_expression_base  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).predicate_) != nullptr) {
     delete ((*yyvaluep).predicate_);
   }
 }
-#line 2742 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2754 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 224: /* add_expression  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 228: /* add_expression  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).expression_) != nullptr) {
     delete ((*yyvaluep).expression_);
   }
 }
-#line 2752 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2764 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 225: /* multiply_expression  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 229: /* multiply_expression  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).expression_) != nullptr) {
     delete ((*yyvaluep).expression_);
   }
 }
-#line 2762 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2774 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 226: /* unary_expression  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 230: /* unary_expression  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).expression_) != nullptr) {
     delete ((*yyvaluep).expression_);
   }
 }
-#line 2772 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2784 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 227: /* expression_base  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 231: /* expression_base  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).expression_) != nullptr) {
     delete ((*yyvaluep).expression_);
   }
 }
-#line 2782 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2794 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 228: /* function_call  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 232: /* function_call  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).function_call_) != nullptr) {
     delete ((*yyvaluep).function_call_);
   }
 }
-#line 2792 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2804 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 229: /* extract_function  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 233: /* extract_function  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).expression_) != nullptr) {
     delete ((*yyvaluep).expression_);
   }
 }
-#line 2802 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2814 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 230: /* substr_function  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 234: /* substr_function  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).expression_) != nullptr) {
     delete ((*yyvaluep).expression_);
   }
 }
-#line 2812 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2824 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 231: /* case_expression  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 235: /* case_expression  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).expression_) != nullptr) {
     delete ((*yyvaluep).expression_);
   }
 }
-#line 2822 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2834 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 232: /* simple_when_clause_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 236: /* simple_when_clause_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).simple_when_clause_list_) != nullptr) {
     delete ((*yyvaluep).simple_when_clause_list_);
   }
 }
-#line 2832 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2844 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 233: /* simple_when_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 237: /* simple_when_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).simple_when_clause_) != nullptr) {
     delete ((*yyvaluep).simple_when_clause_);
   }
 }
-#line 2842 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2854 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 234: /* searched_when_clause_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 238: /* searched_when_clause_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).searched_when_clause_list_) != nullptr) {
     delete ((*yyvaluep).searched_when_clause_list_);
   }
 }
-#line 2852 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2864 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 235: /* searched_when_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 239: /* searched_when_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).searched_when_clause_) != nullptr) {
     delete ((*yyvaluep).searched_when_clause_);
   }
 }
-#line 2862 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2874 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 236: /* opt_else_clause  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 240: /* opt_else_clause  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).expression_) != nullptr) {
     delete ((*yyvaluep).expression_);
   }
 }
-#line 2872 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2884 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 237: /* expression_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 241: /* expression_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).expression_list_) != nullptr) {
     delete ((*yyvaluep).expression_list_);
   }
 }
-#line 2882 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2894 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 238: /* literal_value  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 242: /* literal_value  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).literal_value_) != nullptr) {
     delete ((*yyvaluep).literal_value_);
   }
 }
-#line 2892 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2904 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 239: /* datetime_unit  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 243: /* datetime_unit  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).string_value_) != nullptr) {
     delete ((*yyvaluep).string_value_);
   }
 }
-#line 2902 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2914 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 240: /* literal_value_commalist  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 244: /* literal_value_commalist  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).literal_value_list_) != nullptr) {
     delete ((*yyvaluep).literal_value_list_);
   }
 }
-#line 2912 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2924 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 241: /* attribute_ref  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 245: /* attribute_ref  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).attribute_) != nullptr) {
     delete ((*yyvaluep).attribute_);
   }
 }
-#line 2922 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2934 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 242: /* attribute_ref_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 246: /* attribute_ref_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).attribute_list_) != nullptr) {
     delete ((*yyvaluep).attribute_list_);
   }
 }
-#line 2932 "SqlParser_gen.cpp" /* yacc.c:1257  */
-        break;
-
-    case 243: /* comparison_operation  */
-#line 615 "../SqlParser.ypp" /* yacc.c:1257  */
-      { }
-#line 2938 "SqlParser_gen.cpp" /* yacc.c:1257  */
-        break;
-
-    case 244: /* unary_operation  */
-#line 616 "../SqlParser.ypp" /* yacc.c:1257  */
-      { }
 #line 2944 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 245: /* add_operation  */
-#line 617 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 247: /* comparison_operation  */
+#line 625 "../SqlParser.ypp" /* yacc.c:1257  */
       { }
 #line 2950 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 246: /* multiply_operation  */
-#line 617 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 248: /* unary_operation  */
+#line 626 "../SqlParser.ypp" /* yacc.c:1257  */
       { }
 #line 2956 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 247: /* name_commalist  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 249: /* add_operation  */
+#line 627 "../SqlParser.ypp" /* yacc.c:1257  */
+      { }
+#line 2962 "SqlParser_gen.cpp" /* yacc.c:1257  */
+        break;
+
+    case 250: /* multiply_operation  */
+#line 627 "../SqlParser.ypp" /* yacc.c:1257  */
+      { }
+#line 2968 "SqlParser_gen.cpp" /* yacc.c:1257  */
+        break;
+
+    case 251: /* name_commalist  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).string_list_) != nullptr) {
     delete ((*yyvaluep).string_list_);
   }
 }
-#line 2966 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2978 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 248: /* any_name  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 252: /* any_name  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).string_value_) != nullptr) {
     delete ((*yyvaluep).string_value_);
   }
 }
-#line 2976 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2988 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 249: /* boolean_value  */
-#line 614 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 253: /* boolean_value  */
+#line 624 "../SqlParser.ypp" /* yacc.c:1257  */
       { }
-#line 2982 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 2994 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 250: /* command  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 254: /* command  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).command_) != nullptr) {
     delete ((*yyvaluep).command_);
   }
 }
-#line 2992 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 3004 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
-    case 251: /* command_argument_list  */
-#line 620 "../SqlParser.ypp" /* yacc.c:1257  */
+    case 255: /* command_argument_list  */
+#line 630 "../SqlParser.ypp" /* yacc.c:1257  */
       {
   if (((*yyvaluep).command_argument_list_) != nullptr) {
     delete ((*yyvaluep).command_argument_list_);
   }
 }
-#line 3002 "SqlParser_gen.cpp" /* yacc.c:1257  */
+#line 3014 "SqlParser_gen.cpp" /* yacc.c:1257  */
         break;
 
 
@@ -3290,148 +3302,148 @@
   switch (yyn)
     {
         case 2:
-#line 629 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 639 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     *parsedStatement = (yyvsp[-1].statement_);
     YYACCEPT;
   }
-#line 3299 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3311 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 3:
-#line 633 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 643 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     *parsedStatement = (yyvsp[-1].statement_);
     YYACCEPT;
   }
-#line 3308 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3320 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 4:
-#line 637 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 647 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     *parsedStatement = (yyvsp[-1].command_);
     YYACCEPT;
   }
-#line 3317 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3329 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 5:
-#line 641 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 651 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     *parsedStatement = (yyvsp[-1].command_);
     YYACCEPT;
   }
-#line 3326 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3338 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 6:
-#line 645 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 655 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     YYABORT;
   }
-#line 3334 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3346 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 7:
-#line 648 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 658 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     // Regular yyparse() return codes are non-negative, so use a negative one here.
     return -1;
   }
-#line 3343 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3355 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 8:
-#line 655 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 665 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.statement_) = (yyvsp[0].statement_);
   }
-#line 3351 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3363 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 9:
-#line 658 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 668 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.statement_) = (yyvsp[0].copy_from_statement_);
   }
-#line 3359 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3371 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 10:
-#line 661 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 671 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.statement_) = (yyvsp[0].create_table_statement_);
   }
-#line 3367 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3379 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 11:
-#line 664 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 674 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.statement_) = (yyvsp[0].statement_);
   }
-#line 3375 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3387 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 12:
-#line 667 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 677 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.statement_) = (yyvsp[0].delete_statement_);
   }
-#line 3383 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3395 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 13:
-#line 670 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 680 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.statement_) = (yyvsp[0].drop_table_statement_);
   }
-#line 3391 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3403 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 14:
-#line 673 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 683 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.statement_) = (yyvsp[0].insert_statement_);
   }
-#line 3399 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3411 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 15:
-#line 676 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 686 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.statement_) = (yyvsp[0].quit_statement_);
   }
-#line 3407 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3419 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 16:
-#line 679 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 689 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.statement_) = (yyvsp[0].select_statement_);
+    (yyval.statement_) = (yyvsp[0].set_operation_statement_);
   }
-#line 3415 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3427 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 17:
-#line 682 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 692 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.statement_) = (yyvsp[0].update_statement_);
   }
-#line 3423 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3435 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 18:
-#line 688 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 698 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.quit_statement_) = new quickstep::ParseStatementQuit((yylsp[0]).first_line, (yylsp[0]).first_column);
   }
-#line 3431 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3443 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 19:
-#line 694 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 704 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     delete (yyvsp[-3].string_value_);
     delete (yyvsp[0].attribute_definition_);
@@ -3439,22 +3451,22 @@
     NotSupported(&(yylsp[-5]), yyscanner, "ALTER statements");
     YYERROR;
   }
-#line 3443 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3455 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 20:
-#line 701 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 711 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     delete (yyvsp[-3].string_value_);
     (yyval.statement_) = nullptr;
     NotSupported(&(yylsp[-5]), yyscanner, "ALTER statements");
     YYERROR;
   }
-#line 3454 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3466 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 21:
-#line 707 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 717 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     delete (yyvsp[-3].string_value_);
     delete (yyvsp[0].string_value_);
@@ -3462,11 +3474,11 @@
     NotSupported(&(yylsp[-5]), yyscanner, "ALTER statements");
     YYERROR;
   }
-#line 3466 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3478 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 22:
-#line 714 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 724 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     delete (yyvsp[-3].string_value_);
     delete (yyvsp[0].string_value_);
@@ -3474,19 +3486,19 @@
     NotSupported(&(yylsp[-5]), yyscanner, "ALTER statements");
     YYERROR;
   }
-#line 3478 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3490 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 23:
-#line 723 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 733 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.create_table_statement_) = new quickstep::ParseStatementCreateTable((yylsp[-8]).first_line, (yylsp[-8]).first_column, (yyvsp[-6].string_value_), (yyvsp[-4].attribute_definition_list_), (yyvsp[-1].block_properties_), (yyvsp[0].partition_clause_));
   }
-#line 3486 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3498 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 24:
-#line 728 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 738 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     if ((yyvsp[0].key_value_list_)) {
       (yyval.statement_) = new quickstep::ParseStatementCreateIndex((yylsp[-8]).first_line, (yylsp[-8]).first_column, (yyvsp[-6].string_value_), (yyvsp[-4].string_value_), (yyvsp[-3].attribute_list_), (yyvsp[-1].string_value_), (yylsp[0]).first_line, (yylsp[0]).first_column, (yyvsp[0].key_value_list_));
@@ -3494,153 +3506,153 @@
       (yyval.statement_) = new quickstep::ParseStatementCreateIndex((yylsp[-8]).first_line, (yylsp[-8]).first_column, (yyvsp[-6].string_value_), (yyvsp[-4].string_value_), (yyvsp[-3].attribute_list_), (yyvsp[-1].string_value_));
     }
   }
-#line 3498 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3510 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 25:
-#line 737 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 747 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.drop_table_statement_) = new quickstep::ParseStatementDropTable((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[0].string_value_));
   }
-#line 3506 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3518 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 26:
-#line 742 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 752 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.attribute_definition_) = new quickstep::ParseAttributeDefinition((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].string_value_), (yyvsp[-1].data_type_), (yyvsp[0].column_constraint_list_));
   }
-#line 3514 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3526 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 27:
-#line 747 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 757 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.attribute_definition_list_) = new quickstep::PtrList<quickstep::ParseAttributeDefinition>();
     (yyval.attribute_definition_list_)->push_back((yyvsp[0].attribute_definition_));
   }
-#line 3523 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3535 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 28:
-#line 751 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 761 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.attribute_definition_list_) = (yyvsp[-2].attribute_definition_list_);
     (yyval.attribute_definition_list_)->push_back((yyvsp[0].attribute_definition_));
   }
-#line 3532 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3544 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 29:
-#line 757 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 767 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = nullptr;
     NotSupported(&(yylsp[0]), yyscanner, "BIT data type");
     YYERROR;
   }
-#line 3542 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3554 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 30:
-#line 762 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 772 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDate));
   }
-#line 3550 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3562 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 31:
-#line 765 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 775 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDatetime));
   }
-#line 3558 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3570 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 32:
-#line 768 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 778 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = nullptr;
     NotSupported(&(yylsp[0]), yyscanner, "TIME data type");
     YYERROR;
   }
-#line 3568 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3580 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 33:
-#line 773 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 783 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDatetime));
   }
-#line 3576 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3588 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 34:
-#line 776 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 786 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDouble));
   }
-#line 3584 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3596 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 35:
-#line 779 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 789 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDouble));
   }
-#line 3592 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3604 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 36:
-#line 782 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 792 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDouble));
   }
-#line 3600 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3612 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 37:
-#line 785 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 795 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kFloat));
   }
-#line 3608 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3620 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 38:
-#line 788 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 798 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kInt));
   }
-#line 3616 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3628 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 39:
-#line 791 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 801 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kInt));
   }
-#line 3624 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3636 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 40:
-#line 794 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 804 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kLong));
   }
-#line 3632 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3644 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 41:
-#line 797 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 807 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kLong));
   }
-#line 3640 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3652 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 42:
-#line 800 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 810 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     /**
      * NOTE(chasseur): This pattern exhibits a shift/reduce conflict with the
@@ -3653,27 +3665,27 @@
         "or YEARMONTH INTERVAL");
     YYERROR;
   }
-#line 3657 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3669 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 43:
-#line 812 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 822 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDatetimeInterval));
   }
-#line 3665 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3677 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 44:
-#line 815 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 825 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kYearMonthInterval));
   }
-#line 3673 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3685 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 45:
-#line 818 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 828 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     if ((yyvsp[-1].numeric_literal_value_)->float_like()) {
       delete (yyvsp[-1].numeric_literal_value_);
@@ -3692,11 +3704,11 @@
       }
     }
   }
-#line 3696 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3708 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 46:
-#line 836 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 846 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     if ((yyvsp[-1].numeric_literal_value_)->float_like()) {
       delete (yyvsp[-1].numeric_literal_value_);
@@ -3715,69 +3727,69 @@
       }
     }
   }
-#line 3719 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3731 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 47:
-#line 856 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 866 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.column_constraint_) = new quickstep::ParseColumnConstraintNull((yylsp[0]).first_line, (yylsp[0]).first_column);
   }
-#line 3727 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3739 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 48:
-#line 859 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 869 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.column_constraint_) = new quickstep::ParseColumnConstraintNotNull((yylsp[-1]).first_line, (yylsp[-1]).first_column);
   }
-#line 3735 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3747 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 49:
-#line 862 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 872 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.column_constraint_) = nullptr;
     NotSupported(&(yylsp[0]), yyscanner, "Column Constraints (UNIQUE)");
     YYERROR;
   }
-#line 3745 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3757 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 50:
-#line 867 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 877 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.column_constraint_) = nullptr;
     NotSupported(&(yylsp[-1]), yyscanner, "Column Constraints (PRIMARY KEY)");
     YYERROR;
   }
-#line 3755 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3767 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 51:
-#line 872 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 882 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.column_constraint_) = nullptr;
     delete (yyvsp[0].literal_value_);
     NotSupported(&(yylsp[-1]), yyscanner, "Column Constraints (DEFAULT)");
     YYERROR;
   }
-#line 3766 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3778 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 52:
-#line 878 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 888 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.column_constraint_) = nullptr;
     delete (yyvsp[-1].predicate_);
     NotSupported(&(yylsp[-3]), yyscanner, "Column Constraints (CHECK)");
     YYERROR;
   }
-#line 3777 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3789 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 53:
-#line 884 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 894 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.column_constraint_) = nullptr;
     delete (yyvsp[-3].string_value_);
@@ -3785,65 +3797,65 @@
     NotSupported(&(yylsp[-4]), yyscanner, "Foreign Keys");
     YYERROR;
   }
-#line 3789 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3801 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 54:
-#line 893 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 903 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.column_constraint_list_) = (yyvsp[-1].column_constraint_list_);
     (yyval.column_constraint_list_)->push_back((yyvsp[0].column_constraint_));
   }
-#line 3798 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3810 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 55:
-#line 897 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 907 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.column_constraint_list_) = new quickstep::PtrList<quickstep::ParseColumnConstraint>();
     (yyval.column_constraint_list_)->push_back((yyvsp[0].column_constraint_));
   }
-#line 3807 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3819 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 56:
-#line 903 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 913 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.column_constraint_list_) = nullptr;
   }
-#line 3815 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3827 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 57:
-#line 906 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 916 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.column_constraint_list_) = (yyvsp[0].column_constraint_list_);
   }
-#line 3823 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3835 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 58:
-#line 911 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 921 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     delete (yyvsp[-1].string_list_);
     NotSupported(&(yylsp[-3]), yyscanner, "Table Constraints (UNIQUE)");
     YYERROR;
   }
-#line 3833 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3845 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 59:
-#line 916 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 926 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     delete (yyvsp[-1].string_list_);
     NotSupported(&(yylsp[-4]), yyscanner, "Table Constraints (PRIMARY KEY)");
     YYERROR;
   }
-#line 3843 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3855 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 60:
-#line 921 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 931 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     delete (yyvsp[-6].string_list_);
     delete (yyvsp[-3].string_value_);
@@ -3851,95 +3863,95 @@
     NotSupported(&(yylsp[-9]), yyscanner, "Table Constraints (FOREIGN KEY)");
     YYERROR;
   }
-#line 3855 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3867 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 61:
-#line 928 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 938 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     delete (yyvsp[-1].predicate_);
     NotSupported(&(yylsp[-3]), yyscanner, "Table Constraints (CHECK)");
     YYERROR;
   }
-#line 3865 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3877 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 62:
-#line 935 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 945 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     NotSupported(&(yylsp[-2]), yyscanner, "Table Constraints");
     YYERROR;
   }
-#line 3874 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3886 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 63:
-#line 939 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 949 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     NotSupported(&(yylsp[0]), yyscanner, "Table Constraints");
     YYERROR;
   }
-#line 3883 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3895 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 64:
-#line 945 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 955 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     /* $$ = nullptr; */
   }
-#line 3891 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3903 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 65:
-#line 948 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 958 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     /* $$ = $1; */
   }
-#line 3899 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3911 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 66:
-#line 953 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 963 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.attribute_list_) = nullptr;
   }
-#line 3907 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3919 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 67:
-#line 956 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 966 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.attribute_list_) = (yyvsp[-1].attribute_list_);
   }
-#line 3915 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3927 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 68:
-#line 961 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 971 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.block_properties_) = nullptr;
   }
-#line 3923 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3935 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 69:
-#line 964 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 974 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.block_properties_) = new quickstep::ParseBlockProperties((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-1].key_value_list_));
   }
-#line 3931 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3943 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 70:
-#line 969 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 979 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.partition_clause_) = nullptr;
   }
-#line 3939 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3951 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 71:
-#line 972 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 982 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     if ((yyvsp[0].numeric_literal_value_)->float_like()) {
       delete (yyvsp[0].numeric_literal_value_);
@@ -3957,95 +3969,95 @@
       }
     }
   }
-#line 3961 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3973 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 72:
-#line 991 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1001 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, quickstep::kHashPartitionType);
   }
-#line 3969 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3981 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 73:
-#line 994 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1004 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, quickstep::kRangePartitionType);
   }
-#line 3977 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3989 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 74:
-#line 999 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1009 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.key_value_list_) = new quickstep::PtrList<quickstep::ParseKeyValue>();
     (yyval.key_value_list_)->push_back((yyvsp[0].key_value_));
   }
-#line 3986 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 3998 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 75:
-#line 1003 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1013 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.key_value_list_) = (yyvsp[-2].key_value_list_);
     (yyval.key_value_list_)->push_back((yyvsp[0].key_value_));
   }
-#line 3995 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4007 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 76:
-#line 1009 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1019 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.key_value_) = (yyvsp[0].key_string_value_);
   }
-#line 4003 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4015 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 77:
-#line 1012 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1022 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.key_value_) = (yyvsp[0].key_string_list_);
   }
-#line 4011 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4023 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 78:
-#line 1015 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1025 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.key_value_) = (yyvsp[0].key_integer_value_);
   }
-#line 4019 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4031 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 79:
-#line 1020 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1030 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.key_string_value_) = new quickstep::ParseKeyStringValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].string_value_));
   }
-#line 4027 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4039 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 80:
-#line 1023 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1033 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     // This is a special case to handle the COMPRESS ALL option of the BLOCK PROPERTIES.
     (yyval.key_string_value_) = new quickstep::ParseKeyStringValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_),
         new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, "ALL"));
   }
-#line 4037 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4049 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 81:
-#line 1030 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1040 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.key_string_list_) = new quickstep::ParseKeyStringList((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-3].string_value_), (yyvsp[-1].string_list_));
   }
-#line 4045 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4057 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 82:
-#line 1035 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1045 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     if ((yyvsp[0].numeric_literal_value_)->float_like()) {
       delete (yyvsp[0].numeric_literal_value_);
@@ -4055,64 +4067,64 @@
     }
     (yyval.key_integer_value_) = new quickstep::ParseKeyIntegerValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].numeric_literal_value_));
   }
-#line 4059 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4071 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 83:
-#line 1046 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1056 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     // Defaults to BitWeavingV, but IndexProperties can change this to H.
     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column,
            std::to_string(quickstep::IndexSubBlockType::kBitWeavingV));
   }
-#line 4069 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4081 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 84:
-#line 1051 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1061 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column,
            std::to_string(quickstep::IndexSubBlockType::kBloomFilter));
   }
-#line 4078 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4090 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 85:
-#line 1055 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1065 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column,
            std::to_string(quickstep::IndexSubBlockType::kCSBTree));
   }
-#line 4087 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4099 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 86:
-#line 1059 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1069 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column,
            std::to_string(quickstep::IndexSubBlockType::kSMA));
   }
-#line 4096 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4108 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 87:
-#line 1065 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1075 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.key_value_list_) = nullptr;
   }
-#line 4104 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4116 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 88:
-#line 1068 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1078 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.key_value_list_) = (yyvsp[-1].key_value_list_);
   }
-#line 4112 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4124 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 89:
-#line 1074 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1084 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     delete (yyvsp[-7].string_value_);
     delete (yyvsp[-5].string_list_);
@@ -4121,161 +4133,161 @@
     NotSupported(&(yylsp[-6]), yyscanner, "list of column names in INSERT statement");
     YYERROR;
   }
-#line 4125 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4137 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 90:
-#line 1082 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1092 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.insert_statement_) = new quickstep::ParseStatementInsertTuple((yylsp[-6]).first_line, (yylsp[-6]).first_column, (yyvsp[-4].string_value_), (yyvsp[-1].literal_value_list_));
   }
-#line 4133 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4145 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 91:
-#line 1085 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1095 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.insert_statement_) = new quickstep::ParseStatementInsertSelection((yylsp[-3]).first_line, (yylsp[-2]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].select_query_), nullptr);
   }
-#line 4141 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4153 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 92:
-#line 1088 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1098 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.insert_statement_) = new quickstep::ParseStatementInsertSelection((yylsp[-4]).first_line, (yylsp[-3]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].select_query_), (yyvsp[-4].with_list_));
   }
-#line 4149 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4161 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 93:
-#line 1094 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1104 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.copy_from_statement_) = new quickstep::ParseStatementCopyFrom((yylsp[-4]).first_line, (yylsp[-4]).first_column, (yyvsp[-3].string_value_), (yyvsp[-1].string_value_), (yyvsp[0].copy_from_params_));
   }
-#line 4157 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4169 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 94:
-#line 1099 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1109 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.copy_from_params_) = nullptr;
   }
-#line 4165 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4177 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 95:
-#line 1102 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1112 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.copy_from_params_) = (yyvsp[-1].copy_from_params_);
   }
-#line 4173 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4185 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 96:
-#line 1107 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1117 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.copy_from_params_) = new quickstep::ParseCopyFromParams((yylsp[-1]).first_line, (yylsp[-1]).first_column);
     (yyval.copy_from_params_)->set_delimiter((yyvsp[0].string_value_));
   }
-#line 4182 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4194 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 97:
-#line 1111 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1121 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.copy_from_params_) = new quickstep::ParseCopyFromParams((yylsp[-1]).first_line, (yylsp[-1]).first_column);
     (yyval.copy_from_params_)->escape_strings = (yyvsp[0].boolean_value_);
   }
-#line 4191 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4203 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 98:
-#line 1115 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1125 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.copy_from_params_) = (yyvsp[-3].copy_from_params_);
     (yyval.copy_from_params_)->set_delimiter((yyvsp[0].string_value_));
   }
-#line 4200 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4212 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 99:
-#line 1119 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1129 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.copy_from_params_) = (yyvsp[-3].copy_from_params_);
     (yyval.copy_from_params_)->escape_strings = (yyvsp[0].boolean_value_);
   }
-#line 4209 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4221 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 100:
-#line 1125 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1135 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.update_statement_) = new quickstep::ParseStatementUpdate((yylsp[-4]).first_line, (yylsp[-4]).first_column, (yyvsp[-3].string_value_), (yyvsp[-1].assignment_list_), (yyvsp[0].predicate_));
   }
-#line 4217 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4229 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 101:
-#line 1130 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1140 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.delete_statement_) = new quickstep::ParseStatementDelete((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].predicate_));
   }
-#line 4225 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4237 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 102:
-#line 1135 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1145 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.assignment_list_) = (yyvsp[-2].assignment_list_);
     (yyval.assignment_list_)->push_back((yyvsp[0].assignment_));
   }
-#line 4234 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4246 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 103:
-#line 1139 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1149 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.assignment_list_) = new quickstep::PtrList<quickstep::ParseAssignment>();
     (yyval.assignment_list_)->push_back((yyvsp[0].assignment_));
   }
-#line 4243 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4255 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 104:
-#line 1145 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1155 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.assignment_) = new quickstep::ParseAssignment((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].string_value_), (yyvsp[0].expression_));
   }
-#line 4251 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4263 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 105:
-#line 1151 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1164 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.select_statement_) = new quickstep::ParseStatementSelect((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].select_query_), nullptr, (yyvsp[0].opt_priority_clause_));
+    (yyval.set_operation_statement_) = new quickstep::ParseStatementSetOperation((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].set_operation_), nullptr, (yyvsp[0].opt_priority_clause_));
   }
-#line 4259 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4271 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 106:
-#line 1154 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1167 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.select_statement_) = new quickstep::ParseStatementSelect((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-1].select_query_), (yyvsp[-2].with_list_), (yyvsp[0].opt_priority_clause_));
+    (yyval.set_operation_statement_) = new quickstep::ParseStatementSetOperation((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-1].set_operation_), (yyvsp[-2].with_list_), (yyvsp[0].opt_priority_clause_));
   }
-#line 4267 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4279 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 107:
-#line 1159 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1172 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.opt_priority_clause_) = nullptr;
   }
-#line 4275 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4287 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 108:
-#line 1162 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1175 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     if ((yyvsp[0].numeric_literal_value_)->float_like()) {
       delete (yyvsp[0].numeric_literal_value_);
@@ -4293,415 +4305,457 @@
       }
     }
   }
-#line 4297 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4309 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 109:
-#line 1181 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1194 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.with_list_) = (yyvsp[0].with_list_);
   }
-#line 4305 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4317 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 110:
-#line 1186 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1199 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.with_list_) = new quickstep::PtrVector<quickstep::ParseSubqueryTableReference>();
     (yyval.with_list_)->push_back((yyvsp[0].with_list_element_));
   }
-#line 4314 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4326 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 111:
-#line 1190 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1203 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.with_list_) = (yyvsp[-2].with_list_);
     (yyval.with_list_)->push_back((yyvsp[0].with_list_element_));
   }
-#line 4323 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4335 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 112:
-#line 1196 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1209 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.with_list_element_) = new quickstep::ParseSubqueryTableReference((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[0].subquery_expression_));
     (yyval.with_list_element_)->set_table_reference_signature((yyvsp[-2].table_reference_signature_));
   }
-#line 4332 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4344 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 113:
-#line 1203 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1215 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.select_query_) = new quickstep::ParseSelect((yylsp[-9]).first_line, (yylsp[-9]).first_column, (yyvsp[-7].selection_), (yyvsp[-6].table_reference_list_), (yyvsp[-5].predicate_), (yyvsp[-4].opt_group_by_clause_), (yyvsp[-3].opt_having_clause_), (yyvsp[-2].opt_order_by_clause_), (yyvsp[-1].opt_limit_clause_), (yyvsp[0].opt_window_clause_));
+    if ((yyvsp[-1].boolean_value_)) {
+      (yyval.set_operation_) = new quickstep::ParseSetOperation((yylsp[-3]).first_line, (yylsp[-3]).first_column, quickstep::ParseSetOperation::kUnion);
+    } else {
+      (yyval.set_operation_) = new quickstep::ParseSetOperation((yylsp[-3]).first_line, (yylsp[-3]).first_column, quickstep::ParseSetOperation::kUnionAll);
+    }
+    (yyval.set_operation_)->addOperand((yyvsp[-3].set_operation_));
+    (yyval.set_operation_)->addOperand((yyvsp[0].set_operation_));
   }
-#line 4340 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4358 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 114:
-#line 1208 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1224 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    /* $$ = nullptr; */
+    (yyval.set_operation_) = (yyvsp[0].set_operation_);
   }
-#line 4348 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4366 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 115:
-#line 1211 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1229 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    NotSupported(&(yylsp[0]), yyscanner, "ALL in selection");
-    YYERROR;
+    (yyval.set_operation_) = new quickstep::ParseSetOperation((yylsp[-2]).first_line, (yylsp[-2]).first_column, quickstep::ParseSetOperation::kIntersect);
+    quickstep::ParseSetOperation *op = new quickstep::ParseSetOperation(
+        (yylsp[0]).first_line, (yylsp[0]).first_column, quickstep::ParseSetOperation::kSelect);
+    op->addOperand((yyvsp[0].select_query_));
+    (yyval.set_operation_)->addOperand((yyvsp[-2].set_operation_));
+    (yyval.set_operation_)->addOperand(op);
   }
-#line 4357 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4379 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 116:
-#line 1215 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1237 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    NotSupported(&(yylsp[0]), yyscanner, "DISTINCT in selection");
-    YYERROR;
+    (yyval.set_operation_) = new quickstep::ParseSetOperation((yylsp[0]).first_line, (yylsp[0]).first_column, quickstep::ParseSetOperation::kSelect);
+    (yyval.set_operation_)->addOperand((yyvsp[0].select_query_));
   }
-#line 4366 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4388 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 117:
-#line 1221 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1244 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.selection_) = new quickstep::ParseSelectionStar((yylsp[0]).first_line, (yylsp[0]).first_column);
+    (yyval.select_query_) = new quickstep::ParseSelect((yylsp[-9]).first_line, (yylsp[-9]).first_column, (yyvsp[-7].selection_), (yyvsp[-6].table_reference_list_), (yyvsp[-5].predicate_), (yyvsp[-4].opt_group_by_clause_), (yyvsp[-3].opt_having_clause_), (yyvsp[-2].opt_order_by_clause_), (yyvsp[-1].opt_limit_clause_), (yyvsp[0].opt_window_clause_));
   }
-#line 4374 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4396 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 118:
-#line 1224 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1249 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.selection_) = (yyvsp[0].selection_list_);
+    (yyval.boolean_value_) = true;  // Distinct
   }
-#line 4382 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4404 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 119:
-#line 1229 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1252 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.boolean_value_) = false;  // All
+  }
+#line 4412 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 120:
+#line 1255 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.boolean_value_) = true;  // Distinct
+  }
+#line 4420 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 121:
+#line 1260 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.selection_) = new quickstep::ParseSelectionStar((yylsp[0]).first_line, (yylsp[0]).first_column);
+  }
+#line 4428 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 122:
+#line 1263 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.selection_) = (yyvsp[0].selection_list_);
+  }
+#line 4436 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 123:
+#line 1268 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.selection_list_) = new quickstep::ParseSelectionList((yylsp[0]).first_line, (yylsp[0]).first_column);
     (yyval.selection_list_)->add((yyvsp[0].selection_item_));
   }
-#line 4391 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4445 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 120:
-#line 1233 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 124:
+#line 1272 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.selection_list_) = (yyvsp[-2].selection_list_);
     (yyval.selection_list_)->add((yyvsp[0].selection_item_));
   }
-#line 4400 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 121:
-#line 1239 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.selection_item_) = new quickstep::ParseSelectionItem((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].expression_), (yyvsp[0].string_value_));
-  }
-#line 4408 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 122:
-#line 1242 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.selection_item_) = new quickstep::ParseSelectionItem((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].expression_), (yyvsp[0].string_value_));
-  }
-#line 4416 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 123:
-#line 1245 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.selection_item_) = new quickstep::ParseSelectionItem((yylsp[0]).first_line, (yylsp[0]).first_column, (yyvsp[0].expression_));
-  }
-#line 4424 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 124:
-#line 1250 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.table_reference_list_) = (yyvsp[0].table_reference_list_);
-  }
-#line 4432 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4454 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 125:
-#line 1255 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1278 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.subquery_expression_) = new quickstep::ParseSubqueryExpression((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-1].select_query_));
+    (yyval.selection_item_) = new quickstep::ParseSelectionItem((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].expression_), (yyvsp[0].string_value_));
   }
-#line 4440 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4462 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 126:
-#line 1260 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1281 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.opt_sample_clause_) = NULL;
+    (yyval.selection_item_) = new quickstep::ParseSelectionItem((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].expression_), (yyvsp[0].string_value_));
   }
-#line 4448 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4470 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 127:
-#line 1263 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1284 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.opt_sample_clause_) = new quickstep::ParseSample((yylsp[-2]).first_line, (yylsp[-2]).first_column, true, (yyvsp[-1].numeric_literal_value_));
+    (yyval.selection_item_) = new quickstep::ParseSelectionItem((yylsp[0]).first_line, (yylsp[0]).first_column, (yyvsp[0].expression_));
   }
-#line 4456 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4478 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 128:
-#line 1266 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1289 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.opt_sample_clause_) = new quickstep::ParseSample((yylsp[-2]).first_line, (yylsp[-2]).first_column, false, (yyvsp[-1].numeric_literal_value_));
+    (yyval.table_reference_list_) = (yyvsp[0].table_reference_list_);
   }
-#line 4464 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4486 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 129:
-#line 1271 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1294 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kInnerJoin;
+    (yyval.subquery_expression_) = new quickstep::ParseSubqueryExpression((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-1].set_operation_));
   }
-#line 4472 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4494 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 130:
-#line 1274 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1299 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kInnerJoin;
+    (yyval.opt_sample_clause_) = NULL;
   }
-#line 4480 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4502 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 131:
-#line 1277 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1302 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kLeftOuterJoin;
+    (yyval.opt_sample_clause_) = new quickstep::ParseSample((yylsp[-2]).first_line, (yylsp[-2]).first_column, true, (yyvsp[-1].numeric_literal_value_));
   }
-#line 4488 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4510 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 132:
-#line 1280 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1305 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kLeftOuterJoin;
+    (yyval.opt_sample_clause_) = new quickstep::ParseSample((yylsp[-2]).first_line, (yylsp[-2]).first_column, false, (yyvsp[-1].numeric_literal_value_));
   }
-#line 4496 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4518 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 133:
-#line 1283 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1310 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kRightOuterJoin;
+    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kInnerJoin;
   }
-#line 4504 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4526 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 134:
-#line 1286 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1313 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kRightOuterJoin;
+    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kInnerJoin;
   }
-#line 4512 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4534 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 135:
-#line 1289 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1316 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kFullOuterJoin;
+    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kLeftOuterJoin;
   }
-#line 4520 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4542 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 136:
-#line 1292 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1319 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kFullOuterJoin;
+    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kLeftOuterJoin;
   }
-#line 4528 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4550 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 137:
-#line 1297 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1322 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.table_reference_) = new quickstep::ParseJoinedTableReference((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-4].join_type_), (yyvsp[-5].table_reference_), (yyvsp[-2].table_reference_), (yyvsp[0].predicate_));
+    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kRightOuterJoin;
   }
-#line 4536 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4558 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 138:
-#line 1300 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1325 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.table_reference_) = (yyvsp[0].table_reference_);
+    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kRightOuterJoin;
   }
-#line 4544 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4566 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 139:
-#line 1305 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1328 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kFullOuterJoin;
+  }
+#line 4574 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 140:
+#line 1331 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kFullOuterJoin;
+  }
+#line 4582 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 141:
+#line 1336 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.table_reference_) = new quickstep::ParseJoinedTableReference((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-4].join_type_), (yyvsp[-5].table_reference_), (yyvsp[-2].table_reference_), (yyvsp[0].predicate_));
+  }
+#line 4590 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 142:
+#line 1339 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.table_reference_) = (yyvsp[0].table_reference_);
+  }
+#line 4598 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 143:
+#line 1344 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.table_reference_) = new quickstep::ParseSubqueryTableReference((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].subquery_expression_));
     (yyval.table_reference_)->set_table_reference_signature((yyvsp[0].table_reference_signature_));
   }
-#line 4553 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4607 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 140:
-#line 1309 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 144:
+#line 1348 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.table_reference_) = new quickstep::ParseSimpleTableReference((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].string_value_), (yyvsp[-1].opt_sample_clause_));
     (yyval.table_reference_)->set_table_reference_signature((yyvsp[0].table_reference_signature_));
   }
-#line 4562 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4616 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 141:
-#line 1313 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 145:
+#line 1352 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.table_reference_) = new quickstep::ParseSimpleTableReference((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].opt_sample_clause_));
   }
-#line 4570 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4624 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 142:
-#line 1316 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 146:
+#line 1355 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.table_reference_) = new quickstep::ParseGeneratorTableReference((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].function_call_));
     (yyval.table_reference_)->set_table_reference_signature((yyvsp[0].table_reference_signature_));
   }
-#line 4579 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 143:
-#line 1320 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.table_reference_) = new quickstep::ParseGeneratorTableReference((yylsp[0]).first_line, (yylsp[0]).first_column, (yyvsp[0].function_call_));
-  }
-#line 4587 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 144:
-#line 1323 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.table_reference_) = (yyvsp[-1].table_reference_);
-  }
-#line 4595 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 145:
-#line 1328 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.table_reference_signature_) = (yyvsp[0].table_reference_signature_);
-  }
-#line 4603 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 146:
-#line 1331 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.table_reference_signature_) = (yyvsp[0].table_reference_signature_);
-  }
-#line 4611 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4633 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 147:
-#line 1336 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1359 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.table_reference_signature_) = new ::quickstep::ParseTableReferenceSignature((yylsp[0]).first_line, (yylsp[0]).first_column, (yyvsp[0].string_value_));
+    (yyval.table_reference_) = new quickstep::ParseGeneratorTableReference((yylsp[0]).first_line, (yylsp[0]).first_column, (yyvsp[0].function_call_));
   }
-#line 4619 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4641 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 148:
-#line 1339 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1362 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.table_reference_signature_) = new ::quickstep::ParseTableReferenceSignature((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-3].string_value_), (yyvsp[-1].string_list_));
+    (yyval.table_reference_) = (yyvsp[-1].table_reference_);
   }
-#line 4627 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4649 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 149:
-#line 1344 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1367 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.table_reference_signature_) = (yyvsp[0].table_reference_signature_);
+  }
+#line 4657 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 150:
+#line 1370 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.table_reference_signature_) = (yyvsp[0].table_reference_signature_);
+  }
+#line 4665 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 151:
+#line 1375 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.table_reference_signature_) = new ::quickstep::ParseTableReferenceSignature((yylsp[0]).first_line, (yylsp[0]).first_column, (yyvsp[0].string_value_));
+  }
+#line 4673 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 152:
+#line 1378 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.table_reference_signature_) = new ::quickstep::ParseTableReferenceSignature((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-3].string_value_), (yyvsp[-1].string_list_));
+  }
+#line 4681 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 153:
+#line 1383 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.table_reference_list_) = new quickstep::PtrList<quickstep::ParseTableReference>();
     (yyval.table_reference_list_)->push_back((yyvsp[0].table_reference_));
   }
-#line 4636 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4690 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 150:
-#line 1348 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 154:
+#line 1387 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.table_reference_list_) = (yyvsp[-2].table_reference_list_);
     (yyval.table_reference_list_)->push_back((yyvsp[0].table_reference_));
   }
-#line 4645 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 151:
-#line 1354 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.opt_group_by_clause_) = nullptr;
-  }
-#line 4653 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 152:
-#line 1357 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.opt_group_by_clause_) = new quickstep::ParseGroupBy((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[0].expression_list_));
-  }
-#line 4661 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 153:
-#line 1362 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.opt_having_clause_) = nullptr;
-  }
-#line 4669 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 154:
-#line 1365 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.opt_having_clause_) = new quickstep::ParseHaving((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[0].predicate_));
-  }
-#line 4677 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4699 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 155:
-#line 1370 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1393 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.opt_order_by_clause_) = nullptr;
+    (yyval.opt_group_by_clause_) = nullptr;
   }
-#line 4685 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4707 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 156:
-#line 1373 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1396 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.opt_order_by_clause_) = new quickstep::ParseOrderBy((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[0].order_commalist_));
+    (yyval.opt_group_by_clause_) = new quickstep::ParseGroupBy((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[0].expression_list_));
   }
-#line 4693 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4715 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 157:
-#line 1378 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1401 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.opt_limit_clause_) = nullptr;
+    (yyval.opt_having_clause_) = nullptr;
   }
-#line 4701 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4723 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 158:
-#line 1381 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1404 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.opt_having_clause_) = new quickstep::ParseHaving((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[0].predicate_));
+  }
+#line 4731 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 159:
+#line 1409 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.opt_order_by_clause_) = nullptr;
+  }
+#line 4739 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 160:
+#line 1412 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.opt_order_by_clause_) = new quickstep::ParseOrderBy((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[0].order_commalist_));
+  }
+#line 4747 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 161:
+#line 1417 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.opt_limit_clause_) = nullptr;
+  }
+#line 4755 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 162:
+#line 1420 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     if ((yyvsp[0].numeric_literal_value_)->float_like()) {
       delete (yyvsp[0].numeric_literal_value_);
@@ -4719,258 +4773,258 @@
       }
     }
   }
-#line 4723 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4777 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 159:
-#line 1400 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 163:
+#line 1439 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.opt_window_clause_) = nullptr;
   }
-#line 4731 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4785 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 160:
-#line 1403 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 164:
+#line 1442 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.opt_window_clause_) = (yyvsp[0].opt_window_clause_);
   }
-#line 4739 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4793 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 161:
-#line 1408 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 165:
+#line 1447 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.opt_window_clause_) = new quickstep::PtrList<quickstep::ParseWindow>();
     (yyval.opt_window_clause_)->push_back((yyvsp[0].window_definition_));
   }
-#line 4748 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4802 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 162:
-#line 1412 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 166:
+#line 1451 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.opt_window_clause_) = (yyvsp[-1].opt_window_clause_);
     (yyval.opt_window_clause_)->push_back((yyvsp[0].window_definition_));
   }
-#line 4757 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4811 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 163:
-#line 1418 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 167:
+#line 1457 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.window_definition_) = (yyvsp[-1].window_definition_);
     (yyval.window_definition_)->setName((yyvsp[-4].string_value_));
   }
-#line 4766 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 164:
-#line 1424 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.window_definition_) = new quickstep::ParseWindow((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].window_partition_by_list_), (yyvsp[-1].window_order_by_list_), (yyvsp[0].window_frame_info_));
-  }
-#line 4774 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 165:
-#line 1429 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.window_partition_by_list_) = nullptr;
-  }
-#line 4782 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 166:
-#line 1432 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.window_partition_by_list_) = (yyvsp[0].expression_list_);
-  }
-#line 4790 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 167:
-#line 1437 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.window_order_by_list_) = nullptr;
-  }
-#line 4798 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4820 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 168:
-#line 1440 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1463 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.window_order_by_list_) = (yyvsp[0].order_commalist_);
+    (yyval.window_definition_) = new quickstep::ParseWindow((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].window_partition_by_list_), (yyvsp[-1].window_order_by_list_), (yyvsp[0].window_frame_info_));
   }
-#line 4806 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4828 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 169:
-#line 1445 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1468 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.window_frame_info_) = nullptr;
+    (yyval.window_partition_by_list_) = nullptr;
   }
-#line 4814 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4836 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 170:
-#line 1448 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1471 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.window_frame_info_) = new quickstep::ParseFrameInfo((yylsp[-4]).first_line, (yylsp[-4]).first_column, (yyvsp[-4].boolean_value_), (yyvsp[-2].numeric_literal_value_)->long_value(), (yyvsp[0].numeric_literal_value_)->long_value());
+    (yyval.window_partition_by_list_) = (yyvsp[0].expression_list_);
   }
-#line 4822 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4844 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 171:
-#line 1453 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1476 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.boolean_value_) = true;
+    (yyval.window_order_by_list_) = nullptr;
   }
-#line 4830 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4852 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 172:
-#line 1456 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1479 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.boolean_value_) = false;
+    (yyval.window_order_by_list_) = (yyvsp[0].order_commalist_);
   }
-#line 4838 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4860 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 173:
+#line 1484 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.window_frame_info_) = nullptr;
+  }
+#line 4868 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 174:
-#line 1462 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1487 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.numeric_literal_value_) = new quickstep::NumericParseLiteralValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, "-1");
+    (yyval.window_frame_info_) = new quickstep::ParseFrameInfo((yylsp[-4]).first_line, (yylsp[-4]).first_column, (yyvsp[-4].boolean_value_), (yyvsp[-2].numeric_literal_value_)->long_value(), (yyvsp[0].numeric_literal_value_)->long_value());
   }
-#line 4846 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4876 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 175:
-#line 1465 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1492 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.numeric_literal_value_) = new quickstep::NumericParseLiteralValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, "0");
+    (yyval.boolean_value_) = true;
   }
-#line 4854 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4884 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 177:
-#line 1471 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 176:
+#line 1495 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.numeric_literal_value_) = new quickstep::NumericParseLiteralValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, "-1");
+    (yyval.boolean_value_) = false;
   }
-#line 4862 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4892 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 178:
-#line 1474 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1501 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.numeric_literal_value_) = new quickstep::NumericParseLiteralValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, "0");
+    (yyval.numeric_literal_value_) = new quickstep::NumericParseLiteralValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, "-1");
   }
-#line 4870 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4900 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 179:
-#line 1479 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1504 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.numeric_literal_value_) = new quickstep::NumericParseLiteralValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, "0");
+  }
+#line 4908 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 181:
+#line 1510 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.numeric_literal_value_) = new quickstep::NumericParseLiteralValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, "-1");
+  }
+#line 4916 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 182:
+#line 1513 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.numeric_literal_value_) = new quickstep::NumericParseLiteralValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, "0");
+  }
+#line 4924 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 183:
+#line 1518 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.order_commalist_) = new quickstep::PtrList<quickstep::ParseOrderByItem>();
     (yyval.order_commalist_)->push_back((yyvsp[0].order_item_));
   }
-#line 4879 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4933 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 180:
-#line 1483 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 184:
+#line 1522 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.order_commalist_) = (yyvsp[-2].order_commalist_);
     (yyval.order_commalist_)->push_back((yyvsp[0].order_item_));
   }
-#line 4888 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4942 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 181:
-#line 1489 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 185:
+#line 1528 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.order_item_) = new quickstep::ParseOrderByItem((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].expression_), (yyvsp[-1].order_direction_), (yyvsp[0].order_direction_));
     delete (yyvsp[-1].order_direction_);
     delete (yyvsp[0].order_direction_);
   }
-#line 4898 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 182:
-#line 1496 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.order_direction_) = nullptr;
-  }
-#line 4906 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 183:
-#line 1499 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.order_direction_) = new bool(true);
-  }
-#line 4914 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 184:
-#line 1502 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.order_direction_) = new bool(false);
-  }
-#line 4922 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 185:
-#line 1507 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.order_direction_) = nullptr;
-  }
-#line 4930 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4952 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 186:
-#line 1510 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1535 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.order_direction_) = new bool(true);
+    (yyval.order_direction_) = nullptr;
   }
-#line 4938 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4960 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 187:
-#line 1513 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1538 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.order_direction_) = new bool(false);
+    (yyval.order_direction_) = new bool(true);
   }
-#line 4946 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4968 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 188:
-#line 1519 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1541 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.predicate_) = nullptr;
+    (yyval.order_direction_) = new bool(false);
   }
-#line 4954 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4976 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 189:
-#line 1522 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1546 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.predicate_) = (yyvsp[0].predicate_);
+    (yyval.order_direction_) = nullptr;
   }
-#line 4962 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4984 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 190:
-#line 1527 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1549 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.predicate_) = (yyvsp[0].predicate_);
+    (yyval.order_direction_) = new bool(true);
   }
-#line 4970 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 4992 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 191:
-#line 1532 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1552 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.order_direction_) = new bool(false);
+  }
+#line 5000 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 192:
+#line 1558 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.predicate_) = nullptr;
+  }
+#line 5008 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 193:
+#line 1561 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.predicate_) = (yyvsp[0].predicate_);
+  }
+#line 5016 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 194:
+#line 1566 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.predicate_) = (yyvsp[0].predicate_);
+  }
+#line 5024 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 195:
+#line 1571 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     if ((yyvsp[-2].predicate_)->getParsePredicateType() == quickstep::ParsePredicate::kDisjunction) {
       (yyval.predicate_) = (yyvsp[-2].predicate_);
@@ -4980,19 +5034,19 @@
     }
     static_cast<quickstep::ParsePredicateDisjunction *>((yyval.predicate_))->addPredicate((yyvsp[0].predicate_));
   }
-#line 4984 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5038 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 192:
-#line 1541 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 196:
+#line 1580 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.predicate_) = (yyvsp[0].predicate_);
   }
-#line 4992 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5046 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 193:
-#line 1546 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 197:
+#line 1585 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     if ((yyvsp[-2].predicate_)->getParsePredicateType() == quickstep::ParsePredicate::kConjunction) {
       (yyval.predicate_) = (yyvsp[-2].predicate_);
@@ -5002,453 +5056,453 @@
     }
     static_cast<quickstep::ParsePredicateConjunction *>((yyval.predicate_))->addPredicate((yyvsp[0].predicate_));
   }
-#line 5006 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 194:
-#line 1555 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.predicate_) = (yyvsp[0].predicate_);
-  }
-#line 5014 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 195:
-#line 1560 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.predicate_) = new quickstep::ParsePredicateNegation((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[0].predicate_));
-  }
-#line 5022 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 196:
-#line 1563 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.predicate_) = (yyvsp[0].predicate_);
-  }
-#line 5030 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 197:
-#line 1568 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.predicate_) = new quickstep::ParsePredicateBetween((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-4].expression_), (yyvsp[-2].expression_), (yyvsp[0].expression_));
-  }
-#line 5038 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5060 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 198:
-#line 1571 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1594 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.predicate_) = (yyvsp[0].predicate_);
+  }
+#line 5068 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 199:
+#line 1599 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.predicate_) = new quickstep::ParsePredicateNegation((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[0].predicate_));
+  }
+#line 5076 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 200:
+#line 1602 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.predicate_) = (yyvsp[0].predicate_);
+  }
+#line 5084 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 201:
+#line 1607 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.predicate_) = new quickstep::ParsePredicateBetween((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-4].expression_), (yyvsp[-2].expression_), (yyvsp[0].expression_));
+  }
+#line 5092 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 202:
+#line 1610 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.predicate_) = new quickstep::ParsePredicateNegation(
         (yylsp[-4]).first_line, (yylsp[-4]).first_column,
         new quickstep::ParsePredicateBetween((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-5].expression_), (yyvsp[-2].expression_), (yyvsp[0].expression_)));
   }
-#line 5048 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5102 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 199:
-#line 1576 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 203:
+#line 1615 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     delete (yyvsp[-3].attribute_);
     (yyval.predicate_) = nullptr;
     NotSupported(&(yylsp[-2]), yyscanner, "NULL comparison predicates");
     YYERROR;
   }
-#line 5059 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5113 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 200:
-#line 1582 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 204:
+#line 1621 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     delete (yyvsp[-2].attribute_);
     (yyval.predicate_) = nullptr;
     NotSupported(&(yylsp[-1]), yyscanner, "NULL comparison predicates");
     YYERROR;
   }
-#line 5070 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 201:
-#line 1588 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.predicate_) = new quickstep::ParsePredicateComparison((yylsp[-1]).first_line, (yylsp[-1]).first_column, *(yyvsp[-1].comparison_), (yyvsp[-2].expression_), (yyvsp[0].expression_));
-  }
-#line 5078 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 202:
-#line 1591 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.predicate_) = (yyvsp[-1].predicate_);
-  }
-#line 5086 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 203:
-#line 1594 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.predicate_) = new quickstep::ParsePredicateExists((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[0].subquery_expression_));
-  }
-#line 5094 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 204:
-#line 1597 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.predicate_) = new quickstep::ParsePredicateInTableQuery((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-2].expression_), (yyvsp[0].subquery_expression_));
-  }
-#line 5102 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5124 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 205:
-#line 1600 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1627 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.predicate_) = new quickstep::ParsePredicateInValueList((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-4].expression_), (yyvsp[-1].expression_list_));
+    (yyval.predicate_) = new quickstep::ParsePredicateComparison((yylsp[-1]).first_line, (yylsp[-1]).first_column, *(yyvsp[-1].comparison_), (yyvsp[-2].expression_), (yyvsp[0].expression_));
   }
-#line 5110 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5132 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 206:
-#line 1603 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1630 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.predicate_) = (yyvsp[-1].predicate_);
+  }
+#line 5140 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 207:
+#line 1633 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.predicate_) = new quickstep::ParsePredicateExists((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[0].subquery_expression_));
+  }
+#line 5148 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 208:
+#line 1636 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.predicate_) = new quickstep::ParsePredicateInTableQuery((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-2].expression_), (yyvsp[0].subquery_expression_));
+  }
+#line 5156 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 209:
+#line 1639 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.predicate_) = new quickstep::ParsePredicateInValueList((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-4].expression_), (yyvsp[-1].expression_list_));
+  }
+#line 5164 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 210:
+#line 1642 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.predicate_) = new quickstep::ParsePredicateNegation(
         (yylsp[-2]).first_line,
         (yylsp[-2]).first_column,
         new quickstep::ParsePredicateInTableQuery((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-3].expression_), (yyvsp[0].subquery_expression_)));
   }
-#line 5121 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5175 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 207:
-#line 1609 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 211:
+#line 1648 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.predicate_) = new quickstep::ParsePredicateNegation(
         (yylsp[-4]).first_line,
         (yylsp[-4]).first_column,
         new quickstep::ParsePredicateInValueList((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-5].expression_), (yyvsp[-1].expression_list_)));
   }
-#line 5132 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 208:
-#line 1618 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.expression_) = new quickstep::ParseBinaryExpression((yylsp[-1]).first_line, (yylsp[-1]).first_column, *(yyvsp[-1].binary_operation_), (yyvsp[-2].expression_), (yyvsp[0].expression_));
-  }
-#line 5140 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 209:
-#line 1621 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.expression_) = (yyvsp[0].expression_);
-  }
-#line 5148 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 210:
-#line 1626 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.expression_) = new quickstep::ParseBinaryExpression((yylsp[-1]).first_line, (yylsp[-1]).first_column, *(yyvsp[-1].binary_operation_), (yyvsp[-2].expression_), (yyvsp[0].expression_));
-  }
-#line 5156 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 211:
-#line 1629 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.expression_) = (yyvsp[0].expression_);
-  }
-#line 5164 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5186 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 212:
-#line 1634 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1657 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.expression_) = new quickstep::ParseUnaryExpression((yylsp[-1]).first_line, (yylsp[-1]).first_column, *(yyvsp[-1].unary_operation_), (yyvsp[0].expression_));
+    (yyval.expression_) = new quickstep::ParseBinaryExpression((yylsp[-1]).first_line, (yylsp[-1]).first_column, *(yyvsp[-1].binary_operation_), (yyvsp[-2].expression_), (yyvsp[0].expression_));
   }
-#line 5172 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5194 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 213:
-#line 1637 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1660 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.expression_) = (yyvsp[0].expression_);
   }
-#line 5180 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5202 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 214:
-#line 1642 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1665 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.expression_) = (yyvsp[0].attribute_);
+    (yyval.expression_) = new quickstep::ParseBinaryExpression((yylsp[-1]).first_line, (yylsp[-1]).first_column, *(yyvsp[-1].binary_operation_), (yyvsp[-2].expression_), (yyvsp[0].expression_));
   }
-#line 5188 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5210 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 215:
-#line 1645 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1668 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.expression_) = new quickstep::ParseScalarLiteral((yyvsp[0].literal_value_));
+    (yyval.expression_) = (yyvsp[0].expression_);
   }
-#line 5196 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5218 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 216:
-#line 1648 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1673 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.expression_) = (yyvsp[0].function_call_);
+    (yyval.expression_) = new quickstep::ParseUnaryExpression((yylsp[-1]).first_line, (yylsp[-1]).first_column, *(yyvsp[-1].unary_operation_), (yyvsp[0].expression_));
   }
-#line 5204 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5226 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 217:
-#line 1651 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1676 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.expression_) = (yyvsp[0].expression_);
+  }
+#line 5234 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 218:
+#line 1681 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.expression_) = (yyvsp[0].attribute_);
+  }
+#line 5242 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 219:
+#line 1684 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.expression_) = new quickstep::ParseScalarLiteral((yyvsp[0].literal_value_));
+  }
+#line 5250 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 220:
+#line 1687 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.expression_) = (yyvsp[0].function_call_);
+  }
+#line 5258 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 221:
+#line 1690 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyvsp[-2].function_call_)->setWindowName((yyvsp[0].string_value_));
     (yyval.expression_) = (yyvsp[-2].function_call_);
   }
-#line 5213 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5267 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 218:
-#line 1655 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 222:
+#line 1694 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyvsp[-4].function_call_)->setWindow((yyvsp[-1].window_definition_));
     (yyval.expression_) = (yyvsp[-4].function_call_);
   }
-#line 5222 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 219:
-#line 1659 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.expression_) = (yyvsp[0].expression_);
-  }
-#line 5230 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 220:
-#line 1662 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.expression_) = (yyvsp[0].expression_);
-  }
-#line 5238 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 221:
-#line 1665 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.expression_) = (yyvsp[0].expression_);
-  }
-#line 5246 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 222:
-#line 1668 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.expression_) = (yyvsp[-1].expression_);
-  }
-#line 5254 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5276 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 223:
-#line 1671 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1698 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.expression_) = (yyvsp[0].subquery_expression_);
+    (yyval.expression_) = (yyvsp[0].expression_);
   }
-#line 5262 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5284 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 224:
-#line 1676 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1701 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.expression_) = (yyvsp[0].expression_);
+  }
+#line 5292 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 225:
+#line 1704 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.expression_) = (yyvsp[0].expression_);
+  }
+#line 5300 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 226:
+#line 1707 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.expression_) = (yyvsp[-1].expression_);
+  }
+#line 5308 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 227:
+#line 1710 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.expression_) = (yyvsp[0].subquery_expression_);
+  }
+#line 5316 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 228:
+#line 1715 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.function_call_) = new quickstep::ParseFunctionCall(
         (yylsp[-2]).first_line, (yylsp[-2]).first_column, false, (yyvsp[-2].string_value_), new quickstep::PtrList<quickstep::ParseExpression>());
   }
-#line 5271 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5325 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 225:
-#line 1680 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 229:
+#line 1719 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.function_call_) = new quickstep::ParseFunctionCall(
         (yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-3].string_value_), new quickstep::ParseStar((yylsp[-1]).first_line, (yylsp[-1]).first_column));
   }
-#line 5280 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5334 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 226:
-#line 1684 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 230:
+#line 1723 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.function_call_) = new quickstep::ParseFunctionCall((yylsp[-3]).first_line, (yylsp[-3]).first_column, false, (yyvsp[-3].string_value_), (yyvsp[-1].expression_list_));
   }
-#line 5288 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5342 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 227:
-#line 1687 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 231:
+#line 1726 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.function_call_) = new quickstep::ParseFunctionCall((yylsp[-4]).first_line, (yylsp[-4]).first_column, true, (yyvsp[-4].string_value_), (yyvsp[-1].expression_list_));
   }
-#line 5296 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5350 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 228:
-#line 1692 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 232:
+#line 1731 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.expression_) = new quickstep::ParseExtractFunction((yylsp[-5]).first_line, (yylsp[-5]).first_column, (yyvsp[-3].string_value_), (yyvsp[-1].expression_));
   }
-#line 5304 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5358 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 229:
-#line 1697 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 233:
+#line 1736 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.expression_) = new quickstep::ParseSubstringFunction(
         (yylsp[-5]).first_line, (yylsp[-5]).first_column, (yyvsp[-3].expression_), (yyvsp[-1].numeric_literal_value_)->long_value());
   }
-#line 5313 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5367 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 230:
-#line 1701 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 234:
+#line 1740 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.expression_) = new quickstep::ParseSubstringFunction(
         (yylsp[-7]).first_line, (yylsp[-7]).first_column, (yyvsp[-5].expression_), (yyvsp[-3].numeric_literal_value_)->long_value(), (yyvsp[-1].numeric_literal_value_)->long_value());
   }
-#line 5322 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5376 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 231:
-#line 1707 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 235:
+#line 1746 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.expression_) = new quickstep::ParseSimpleCaseExpression((yylsp[-4]).first_line, (yylsp[-4]).first_column, (yyvsp[-3].expression_), (yyvsp[-2].simple_when_clause_list_), (yyvsp[-1].expression_));
   }
-#line 5330 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5384 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 232:
-#line 1710 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 236:
+#line 1749 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.expression_) = new quickstep::ParseSearchedCaseExpression((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-2].searched_when_clause_list_), (yyvsp[-1].expression_));
   }
-#line 5338 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5392 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 233:
-#line 1715 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 237:
+#line 1754 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.simple_when_clause_list_) = new quickstep::PtrVector<quickstep::ParseSimpleWhenClause>;
     (yyval.simple_when_clause_list_)->push_back((yyvsp[0].simple_when_clause_));
   }
-#line 5347 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5401 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 234:
-#line 1719 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 238:
+#line 1758 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.simple_when_clause_list_) = (yyvsp[-1].simple_when_clause_list_);
     (yyval.simple_when_clause_list_)->push_back((yyvsp[0].simple_when_clause_));
   }
-#line 5356 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5410 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 235:
-#line 1725 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 239:
+#line 1764 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.simple_when_clause_) = new quickstep::ParseSimpleWhenClause((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-2].expression_), (yyvsp[0].expression_));
   }
-#line 5364 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5418 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 236:
-#line 1730 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 240:
+#line 1769 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.searched_when_clause_list_) = new quickstep::PtrVector<quickstep::ParseSearchedWhenClause>;
     (yyval.searched_when_clause_list_)->push_back((yyvsp[0].searched_when_clause_));
   }
-#line 5373 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5427 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 237:
-#line 1734 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 241:
+#line 1773 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.searched_when_clause_list_) = (yyvsp[-1].searched_when_clause_list_);
     (yyval.searched_when_clause_list_)->push_back((yyvsp[0].searched_when_clause_));
   }
-#line 5382 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5436 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 238:
-#line 1740 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 242:
+#line 1779 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.searched_when_clause_) = new quickstep::ParseSearchedWhenClause((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-2].predicate_), (yyvsp[0].expression_));
   }
-#line 5390 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5444 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 239:
-#line 1745 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 243:
+#line 1784 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.expression_) = NULL;
   }
-#line 5398 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5452 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 240:
-#line 1748 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 244:
+#line 1787 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.expression_) = (yyvsp[0].expression_);
   }
-#line 5406 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5460 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 241:
-#line 1753 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 245:
+#line 1792 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.expression_list_) = new quickstep::PtrList<quickstep::ParseExpression>();
     (yyval.expression_list_)->push_back((yyvsp[0].expression_));
   }
-#line 5415 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5469 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 242:
-#line 1757 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 246:
+#line 1796 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.expression_list_) = (yyvsp[-2].expression_list_);
     (yyval.expression_list_)->push_back((yyvsp[0].expression_));
   }
-#line 5424 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5478 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 243:
-#line 1763 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 247:
+#line 1802 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.literal_value_) = new quickstep::NullParseLiteralValue((yylsp[0]).first_line, (yylsp[0]).first_column);
   }
-#line 5432 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5486 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 244:
-#line 1766 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 248:
+#line 1805 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.literal_value_) = (yyvsp[0].numeric_literal_value_);
   }
-#line 5440 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5494 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 245:
-#line 1769 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 249:
+#line 1808 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.literal_value_) = (yyvsp[0].numeric_literal_value_);
   }
-#line 5448 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5502 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 246:
-#line 1772 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 250:
+#line 1811 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     /**
      * NOTE(chasseur): This case exhibits a shift/reduce conflict with the
@@ -5461,20 +5515,20 @@
     (yyvsp[0].numeric_literal_value_)->prependMinus();
     (yyval.literal_value_) = (yyvsp[0].numeric_literal_value_);
   }
-#line 5465 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5519 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 247:
-#line 1784 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 251:
+#line 1823 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.literal_value_) = new quickstep::StringParseLiteralValue((yyvsp[0].string_value_),
                                                 nullptr);  // No explicit type.
   }
-#line 5474 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5528 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 248:
-#line 1788 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 252:
+#line 1827 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     /**
      * NOTE(chasseur): This case exhibits a shift/reduce conflict with the
@@ -5494,11 +5548,11 @@
       YYERROR;
     }
   }
-#line 5498 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5552 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 249:
-#line 1807 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 253:
+#line 1846 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     quickstep::StringParseLiteralValue *parse_value;
     const std::string &datetime_type_value = (yyvsp[0].string_value_)->value();
@@ -5512,11 +5566,11 @@
       YYERROR;
     }
   }
-#line 5516 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5570 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 250:
-#line 1820 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 254:
+#line 1859 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     quickstep::StringParseLiteralValue *parse_value
         = new quickstep::StringParseLiteralValue((yyvsp[0].string_value_), &((yyvsp[-1].data_type_)->getType()));
@@ -5530,191 +5584,191 @@
       (yyval.literal_value_) = parse_value;
     }
   }
-#line 5534 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 251:
-#line 1835 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("YEAR"));
-  }
-#line 5542 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 252:
-#line 1838 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("MONTH"));
-  }
-#line 5550 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 253:
-#line 1841 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("DAY"));
-  }
-#line 5558 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 254:
-#line 1844 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("HOUR"));
-  }
-#line 5566 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5588 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 255:
-#line 1847 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1874 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("MINUTE"));
+     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("YEAR"));
   }
-#line 5574 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5596 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 256:
-#line 1850 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1877 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("SECOND"));
+     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("MONTH"));
   }
-#line 5582 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5604 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 257:
-#line 1855 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1880 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("DAY"));
+  }
+#line 5612 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 258:
+#line 1883 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("HOUR"));
+  }
+#line 5620 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 259:
+#line 1886 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("MINUTE"));
+  }
+#line 5628 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 260:
+#line 1889 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+     (yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("SECOND"));
+  }
+#line 5636 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 261:
+#line 1894 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.literal_value_list_) = new quickstep::PtrList<quickstep::ParseScalarLiteral>();
     (yyval.literal_value_list_)->push_back(new quickstep::ParseScalarLiteral((yyvsp[0].literal_value_)));
   }
-#line 5591 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5645 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 258:
-#line 1859 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 262:
+#line 1898 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.literal_value_list_) = (yyvsp[-2].literal_value_list_);
     (yyval.literal_value_list_)->push_back(new quickstep::ParseScalarLiteral((yyvsp[0].literal_value_)));
   }
-#line 5600 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5654 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 259:
-#line 1865 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 263:
+#line 1904 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.attribute_) = new quickstep::ParseAttribute((yylsp[0]).first_line, (yylsp[0]).first_column, (yyvsp[0].string_value_));
   }
-#line 5608 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5662 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 260:
-#line 1868 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 264:
+#line 1907 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.attribute_) = new quickstep::ParseAttribute((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[0].string_value_), (yyvsp[-2].string_value_));
   }
-#line 5616 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5670 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 261:
-#line 1873 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 265:
+#line 1912 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.attribute_list_) = new quickstep::PtrList<quickstep::ParseAttribute>();
     (yyval.attribute_list_)->push_back((yyvsp[0].attribute_));
   }
-#line 5625 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5679 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 262:
-#line 1877 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 266:
+#line 1916 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.attribute_list_) = (yyvsp[-2].attribute_list_);
     (yyval.attribute_list_)->push_back((yyvsp[0].attribute_));
   }
-#line 5634 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 263:
-#line 1884 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kEqual);
-  }
-#line 5642 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 264:
-#line 1887 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kNotEqual);
-  }
-#line 5650 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 265:
-#line 1890 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kLess);
-  }
-#line 5658 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 266:
-#line 1893 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kLessOrEqual);
-  }
-#line 5666 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5688 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 267:
-#line 1896 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1923 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kGreater);
+    (yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kEqual);
   }
-#line 5674 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5696 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 268:
-#line 1899 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1926 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kGreaterOrEqual);
+    (yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kNotEqual);
   }
-#line 5682 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5704 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 269:
-#line 1902 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1929 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.comparison_) =  &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kLike);
+    (yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kLess);
   }
-#line 5690 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5712 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 270:
-#line 1905 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1932 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.comparison_) =  &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kNotLike);
+    (yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kLessOrEqual);
   }
-#line 5698 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5720 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 271:
-#line 1908 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1935 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.comparison_) =  &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kRegexMatch);
+    (yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kGreater);
   }
-#line 5706 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5728 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 272:
-#line 1911 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1938 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.comparison_) =  &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kNotRegexMatch);
+    (yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kGreaterOrEqual);
   }
-#line 5714 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5736 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 273:
-#line 1916 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1941 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.comparison_) =  &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kLike);
+  }
+#line 5744 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 274:
+#line 1944 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.comparison_) =  &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kNotLike);
+  }
+#line 5752 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 275:
+#line 1947 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.comparison_) =  &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kRegexMatch);
+  }
+#line 5760 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 276:
+#line 1950 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.comparison_) =  &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kNotRegexMatch);
+  }
+#line 5768 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 277:
+#line 1955 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     /**
      * NOTE(chasseur): This case exhibits a shift/reduce conflict with the
@@ -5724,146 +5778,146 @@
      **/
     (yyval.unary_operation_) = &quickstep::UnaryOperationFactory::GetUnaryOperation(quickstep::UnaryOperationID::kNegate);
   }
-#line 5728 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 274:
-#line 1927 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kAdd);
-  }
-#line 5736 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 275:
-#line 1930 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kSubtract);
-  }
-#line 5744 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 276:
-#line 1935 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kModulo);
-  }
-#line 5752 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 277:
-#line 1938 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kMultiply);
-  }
-#line 5760 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5782 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 278:
-#line 1941 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1966 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kDivide);
+    (yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kAdd);
   }
-#line 5768 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5790 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 279:
-#line 1947 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 1969 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kSubtract);
+  }
+#line 5798 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 280:
+#line 1974 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kModulo);
+  }
+#line 5806 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 281:
+#line 1977 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kMultiply);
+  }
+#line 5814 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 282:
+#line 1980 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kDivide);
+  }
+#line 5822 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 283:
+#line 1986 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.string_list_) = new quickstep::PtrList<quickstep::ParseString>();
     (yyval.string_list_)->push_back((yyvsp[0].string_value_));
   }
-#line 5777 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5831 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 280:
-#line 1951 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 284:
+#line 1990 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.string_list_) = (yyvsp[-2].string_list_);
     (yyval.string_list_)->push_back((yyvsp[0].string_value_));
   }
-#line 5786 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5840 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 281:
-#line 1957 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 285:
+#line 1996 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     (yyval.string_value_) = (yyvsp[0].string_value_);
   }
-#line 5794 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5848 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 282:
-#line 1960 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 286:
+#line 1999 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     if ((yyvsp[0].string_value_)->value().empty()) {
       quickstep_yyerror(&(yylsp[0]), yyscanner, nullptr, "Zero-length identifier");
     }
     (yyval.string_value_) = (yyvsp[0].string_value_);
   }
-#line 5805 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 283:
-#line 1968 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.boolean_value_) = true;
-  }
-#line 5813 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 284:
-#line 1971 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.boolean_value_) = true;
-  }
-#line 5821 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 285:
-#line 1974 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.boolean_value_) = false;
-  }
-#line 5829 "SqlParser_gen.cpp" /* yacc.c:1661  */
-    break;
-
-  case 286:
-#line 1977 "../SqlParser.ypp" /* yacc.c:1661  */
-    {
-    (yyval.boolean_value_) = false;
-  }
-#line 5837 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5859 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 287:
-#line 1983 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 2007 "../SqlParser.ypp" /* yacc.c:1646  */
     {
-    (yyval.command_) = new quickstep::ParseCommand((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].command_argument_list_));
+    (yyval.boolean_value_) = true;
   }
-#line 5845 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5867 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
   case 288:
-#line 1988 "../SqlParser.ypp" /* yacc.c:1661  */
+#line 2010 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.boolean_value_) = true;
+  }
+#line 5875 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 289:
+#line 2013 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.boolean_value_) = false;
+  }
+#line 5883 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 290:
+#line 2016 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.boolean_value_) = false;
+  }
+#line 5891 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 291:
+#line 2022 "../SqlParser.ypp" /* yacc.c:1646  */
+    {
+    (yyval.command_) = new quickstep::ParseCommand((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].command_argument_list_));
+  }
+#line 5899 "SqlParser_gen.cpp" /* yacc.c:1646  */
+    break;
+
+  case 292:
+#line 2027 "../SqlParser.ypp" /* yacc.c:1646  */
     {
     quickstep::PtrVector<quickstep::ParseString> *argument_list = (yyvsp[-1].command_argument_list_);
     argument_list->push_back((yyvsp[0].string_value_));
     (yyval.command_argument_list_) = argument_list;
   }
-#line 5855 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5909 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
-  case 289:
-#line 1993 "../SqlParser.ypp" /* yacc.c:1661  */
+  case 293:
+#line 2032 "../SqlParser.ypp" /* yacc.c:1646  */
     { /* Epsilon, an empy match. */
     (yyval.command_argument_list_) = new quickstep::PtrVector<quickstep::ParseString>();
   }
-#line 5863 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5917 "SqlParser_gen.cpp" /* yacc.c:1646  */
     break;
 
 
-#line 5867 "SqlParser_gen.cpp" /* yacc.c:1661  */
+#line 5921 "SqlParser_gen.cpp" /* yacc.c:1646  */
       default: break;
     }
   /* User semantic actions sometimes alter yychar, and that requires
@@ -6098,7 +6152,7 @@
 #endif
   return yyresult;
 }
-#line 1997 "../SqlParser.ypp" /* yacc.c:1906  */
+#line 2036 "../SqlParser.ypp" /* yacc.c:1906  */
 
 
 void NotSupported(const YYLTYPE *location, yyscan_t yyscanner, const std::string &feature) {
diff --git a/parser/preprocessed/SqlParser_gen.hpp b/parser/preprocessed/SqlParser_gen.hpp
index f1876b8..857eaaf 100644
--- a/parser/preprocessed/SqlParser_gen.hpp
+++ b/parser/preprocessed/SqlParser_gen.hpp
@@ -65,117 +65,119 @@
     TOKEN_IS = 275,
     UNARY_PLUS = 276,
     UNARY_MINUS = 277,
-    TOKEN_ADD = 278,
-    TOKEN_ALL = 279,
-    TOKEN_ALTER = 280,
-    TOKEN_AS = 281,
-    TOKEN_ASC = 282,
-    TOKEN_BIGINT = 283,
-    TOKEN_BIT = 284,
-    TOKEN_BITWEAVING = 285,
-    TOKEN_BLOCKPROPERTIES = 286,
-    TOKEN_BLOCKSAMPLE = 287,
-    TOKEN_BLOOM_FILTER = 288,
-    TOKEN_CSB_TREE = 289,
-    TOKEN_BY = 290,
-    TOKEN_CASE = 291,
-    TOKEN_CHARACTER = 292,
-    TOKEN_CHECK = 293,
-    TOKEN_COLUMN = 294,
-    TOKEN_CONSTRAINT = 295,
-    TOKEN_COPY = 296,
-    TOKEN_CREATE = 297,
-    TOKEN_CURRENT = 298,
-    TOKEN_DATE = 299,
-    TOKEN_DATETIME = 300,
-    TOKEN_DAY = 301,
-    TOKEN_DECIMAL = 302,
-    TOKEN_DEFAULT = 303,
-    TOKEN_DELETE = 304,
-    TOKEN_DELIMITER = 305,
-    TOKEN_DESC = 306,
-    TOKEN_DISTINCT = 307,
-    TOKEN_DOUBLE = 308,
-    TOKEN_DROP = 309,
-    TOKEN_ELSE = 310,
-    TOKEN_END = 311,
-    TOKEN_ESCAPE_STRINGS = 312,
-    TOKEN_EXISTS = 313,
-    TOKEN_EXTRACT = 314,
-    TOKEN_FALSE = 315,
-    TOKEN_FIRST = 316,
-    TOKEN_FLOAT = 317,
-    TOKEN_FOLLOWING = 318,
-    TOKEN_FOR = 319,
-    TOKEN_FOREIGN = 320,
-    TOKEN_FROM = 321,
-    TOKEN_FULL = 322,
-    TOKEN_GROUP = 323,
-    TOKEN_HASH = 324,
-    TOKEN_HAVING = 325,
-    TOKEN_HOUR = 326,
-    TOKEN_IN = 327,
-    TOKEN_INDEX = 328,
-    TOKEN_INNER = 329,
-    TOKEN_INSERT = 330,
-    TOKEN_INTEGER = 331,
-    TOKEN_INTERVAL = 332,
-    TOKEN_INTO = 333,
-    TOKEN_JOIN = 334,
-    TOKEN_KEY = 335,
-    TOKEN_LAST = 336,
-    TOKEN_LEFT = 337,
-    TOKEN_LIMIT = 338,
-    TOKEN_LONG = 339,
-    TOKEN_MINUTE = 340,
-    TOKEN_MONTH = 341,
-    TOKEN_NULL = 342,
-    TOKEN_NULLS = 343,
-    TOKEN_OFF = 344,
-    TOKEN_ON = 345,
-    TOKEN_ORDER = 346,
-    TOKEN_OUTER = 347,
-    TOKEN_OVER = 348,
-    TOKEN_PARTITION = 349,
-    TOKEN_PARTITIONS = 350,
-    TOKEN_PERCENT = 351,
-    TOKEN_PRECEDING = 352,
-    TOKEN_PRIMARY = 353,
-    TOKEN_PRIORITY = 354,
-    TOKEN_QUIT = 355,
-    TOKEN_RANGE = 356,
-    TOKEN_REAL = 357,
-    TOKEN_REFERENCES = 358,
-    TOKEN_RIGHT = 359,
-    TOKEN_ROW = 360,
-    TOKEN_ROW_DELIMITER = 361,
-    TOKEN_ROWS = 362,
-    TOKEN_SECOND = 363,
-    TOKEN_SELECT = 364,
-    TOKEN_SET = 365,
-    TOKEN_SMA = 366,
-    TOKEN_SMALLINT = 367,
-    TOKEN_SUBSTRING = 368,
-    TOKEN_TABLE = 369,
-    TOKEN_THEN = 370,
-    TOKEN_TIME = 371,
-    TOKEN_TIMESTAMP = 372,
-    TOKEN_TRUE = 373,
-    TOKEN_TUPLESAMPLE = 374,
-    TOKEN_UNBOUNDED = 375,
-    TOKEN_UNIQUE = 376,
-    TOKEN_UPDATE = 377,
-    TOKEN_USING = 378,
-    TOKEN_VALUES = 379,
-    TOKEN_VARCHAR = 380,
-    TOKEN_WHEN = 381,
-    TOKEN_WHERE = 382,
-    TOKEN_WINDOW = 383,
-    TOKEN_WITH = 384,
-    TOKEN_YEAR = 385,
-    TOKEN_YEARMONTH = 386,
-    TOKEN_EOF = 387,
-    TOKEN_LEX_ERROR = 388
+    TOKEN_ALL = 278,
+    TOKEN_UNION = 279,
+    TOKEN_INTERSECT = 280,
+    TOKEN_ADD = 281,
+    TOKEN_ALTER = 282,
+    TOKEN_AS = 283,
+    TOKEN_ASC = 284,
+    TOKEN_BIGINT = 285,
+    TOKEN_BIT = 286,
+    TOKEN_BITWEAVING = 287,
+    TOKEN_BLOCKPROPERTIES = 288,
+    TOKEN_BLOCKSAMPLE = 289,
+    TOKEN_BLOOM_FILTER = 290,
+    TOKEN_CSB_TREE = 291,
+    TOKEN_BY = 292,
+    TOKEN_CASE = 293,
+    TOKEN_CHARACTER = 294,
+    TOKEN_CHECK = 295,
+    TOKEN_COLUMN = 296,
+    TOKEN_CONSTRAINT = 297,
+    TOKEN_COPY = 298,
+    TOKEN_CREATE = 299,
+    TOKEN_CURRENT = 300,
+    TOKEN_DATE = 301,
+    TOKEN_DATETIME = 302,
+    TOKEN_DAY = 303,
+    TOKEN_DECIMAL = 304,
+    TOKEN_DEFAULT = 305,
+    TOKEN_DELETE = 306,
+    TOKEN_DELIMITER = 307,
+    TOKEN_DESC = 308,
+    TOKEN_DISTINCT = 309,
+    TOKEN_DOUBLE = 310,
+    TOKEN_DROP = 311,
+    TOKEN_ELSE = 312,
+    TOKEN_END = 313,
+    TOKEN_ESCAPE_STRINGS = 314,
+    TOKEN_EXISTS = 315,
+    TOKEN_EXTRACT = 316,
+    TOKEN_FALSE = 317,
+    TOKEN_FIRST = 318,
+    TOKEN_FLOAT = 319,
+    TOKEN_FOLLOWING = 320,
+    TOKEN_FOR = 321,
+    TOKEN_FOREIGN = 322,
+    TOKEN_FROM = 323,
+    TOKEN_FULL = 324,
+    TOKEN_GROUP = 325,
+    TOKEN_HASH = 326,
+    TOKEN_HAVING = 327,
+    TOKEN_HOUR = 328,
+    TOKEN_IN = 329,
+    TOKEN_INDEX = 330,
+    TOKEN_INNER = 331,
+    TOKEN_INSERT = 332,
+    TOKEN_INTEGER = 333,
+    TOKEN_INTERVAL = 334,
+    TOKEN_INTO = 335,
+    TOKEN_JOIN = 336,
+    TOKEN_KEY = 337,
+    TOKEN_LAST = 338,
+    TOKEN_LEFT = 339,
+    TOKEN_LIMIT = 340,
+    TOKEN_LONG = 341,
+    TOKEN_MINUTE = 342,
+    TOKEN_MONTH = 343,
+    TOKEN_NULL = 344,
+    TOKEN_NULLS = 345,
+    TOKEN_OFF = 346,
+    TOKEN_ON = 347,
+    TOKEN_ORDER = 348,
+    TOKEN_OUTER = 349,
+    TOKEN_OVER = 350,
+    TOKEN_PARTITION = 351,
+    TOKEN_PARTITIONS = 352,
+    TOKEN_PERCENT = 353,
+    TOKEN_PRECEDING = 354,
+    TOKEN_PRIMARY = 355,
+    TOKEN_PRIORITY = 356,
+    TOKEN_QUIT = 357,
+    TOKEN_RANGE = 358,
+    TOKEN_REAL = 359,
+    TOKEN_REFERENCES = 360,
+    TOKEN_RIGHT = 361,
+    TOKEN_ROW = 362,
+    TOKEN_ROW_DELIMITER = 363,
+    TOKEN_ROWS = 364,
+    TOKEN_SECOND = 365,
+    TOKEN_SELECT = 366,
+    TOKEN_SET = 367,
+    TOKEN_SMA = 368,
+    TOKEN_SMALLINT = 369,
+    TOKEN_SUBSTRING = 370,
+    TOKEN_TABLE = 371,
+    TOKEN_THEN = 372,
+    TOKEN_TIME = 373,
+    TOKEN_TIMESTAMP = 374,
+    TOKEN_TRUE = 375,
+    TOKEN_TUPLESAMPLE = 376,
+    TOKEN_UNBOUNDED = 377,
+    TOKEN_UNIQUE = 378,
+    TOKEN_UPDATE = 379,
+    TOKEN_USING = 380,
+    TOKEN_VALUES = 381,
+    TOKEN_VARCHAR = 382,
+    TOKEN_WHEN = 383,
+    TOKEN_WHERE = 384,
+    TOKEN_WINDOW = 385,
+    TOKEN_WITH = 386,
+    TOKEN_YEAR = 387,
+    TOKEN_YEARMONTH = 388,
+    TOKEN_EOF = 389,
+    TOKEN_LEX_ERROR = 390
   };
 #endif
 
@@ -184,7 +186,7 @@
 
 union YYSTYPE
 {
-#line 120 "../SqlParser.ypp" /* yacc.c:1915  */
+#line 121 "../SqlParser.ypp" /* yacc.c:1909  */
 
   quickstep::ParseString *string_value_;
 
@@ -216,6 +218,8 @@
   quickstep::ParseSelectionItem *selection_item_;
   quickstep::ParseSelectionList *selection_list_;
 
+  quickstep::ParseSetOperation *set_operation_;
+
   quickstep::ParseTableReference *table_reference_;
   quickstep::PtrList<quickstep::ParseTableReference> *table_reference_list_;
   quickstep::ParseTableReferenceSignature *table_reference_signature_;
@@ -243,7 +247,7 @@
   quickstep::PtrVector<quickstep::ParseString> *command_argument_list_;
 
   quickstep::ParseStatement *statement_;
-  quickstep::ParseStatementSelect *select_statement_;
+  quickstep::ParseStatementSetOperation *set_operation_statement_;
   quickstep::ParseStatementUpdate *update_statement_;
   quickstep::ParseStatementInsert *insert_statement_;
   quickstep::ParseStatementDelete *delete_statement_;
@@ -284,7 +288,7 @@
 
   quickstep::ParsePriority *opt_priority_clause_;
 
-#line 288 "SqlParser_gen.hpp" /* yacc.c:1915  */
+#line 292 "SqlParser_gen.hpp" /* yacc.c:1909  */
 };
 
 typedef union YYSTYPE YYSTYPE;
diff --git a/parser/tests/Aggregate.test b/parser/tests/Aggregate.test
index e7b8945..5fc5228 100644
--- a/parser/tests/Aggregate.test
+++ b/parser/tests/Aggregate.test
@@ -17,50 +17,54 @@
 
 SELECT AGG(*), AGG(), AGG(a, b, c) FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-FunctionCall[name=AGG,is_star=true]
-  | +-SelectListItem
-  | | +-FunctionCall[name=AGG]
-  | +-SelectListItem
-  |   +-FunctionCall[name=AGG]
-  |     +-AttributeReference[attribute_name=a]
-  |     +-AttributeReference[attribute_name=b]
-  |     +-AttributeReference[attribute_name=c]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-FunctionCall[name=AGG,is_star=true]
+      | +-SelectListItem
+      | | +-FunctionCall[name=AGG]
+      | +-SelectListItem
+      |   +-FunctionCall[name=AGG]
+      |     +-AttributeReference[attribute_name=a]
+      |     +-AttributeReference[attribute_name=b]
+      |     +-AttributeReference[attribute_name=c]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT AGG()+1, AGG()*2+1+AGG(a, b)/AGG(c, d) FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Add
-  | |   +-left_operand=FunctionCall[name=AGG]
-  | |   +-right_operand=Literal
-  | |     +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-SelectListItem
-  |   +-Add
-  |     +-left_operand=Add
-  |     | +-left_operand=Multiply
-  |     | | +-left_operand=FunctionCall[name=AGG]
-  |     | | +-right_operand=Literal
-  |     | |   +-NumericLiteral[numeric_string=2,float_like=false]
-  |     | +-right_operand=Literal
-  |     |   +-NumericLiteral[numeric_string=1,float_like=false]
-  |     +-right_operand=Divide
-  |       +-left_operand=FunctionCall[name=AGG]
-  |       | +-AttributeReference[attribute_name=a]
-  |       | +-AttributeReference[attribute_name=b]
-  |       +-right_operand=FunctionCall[name=AGG]
-  |         +-AttributeReference[attribute_name=c]
-  |         +-AttributeReference[attribute_name=d]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Add
+      | |   +-left_operand=FunctionCall[name=AGG]
+      | |   +-right_operand=Literal
+      | |     +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-SelectListItem
+      |   +-Add
+      |     +-left_operand=Add
+      |     | +-left_operand=Multiply
+      |     | | +-left_operand=FunctionCall[name=AGG]
+      |     | | +-right_operand=Literal
+      |     | |   +-NumericLiteral[numeric_string=2,float_like=false]
+      |     | +-right_operand=Literal
+      |     |   +-NumericLiteral[numeric_string=1,float_like=false]
+      |     +-right_operand=Divide
+      |       +-left_operand=FunctionCall[name=AGG]
+      |       | +-AttributeReference[attribute_name=a]
+      |       | +-AttributeReference[attribute_name=b]
+      |       +-right_operand=FunctionCall[name=AGG]
+      |         +-AttributeReference[attribute_name=c]
+      |         +-AttributeReference[attribute_name=d]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 # Function calls as arguments of another function calls.
@@ -68,25 +72,27 @@
 # the query is not valid. The query resolver will capture the error.
 SELECT AGG(AGG(AGG()+1)*2, AGG(*)/2.0) FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-FunctionCall[name=AGG]
-  |     +-Multiply
-  |     | +-left_operand=FunctionCall[name=AGG]
-  |     | | +-Add
-  |     | |   +-left_operand=FunctionCall[name=AGG]
-  |     | |   +-right_operand=Literal
-  |     | |     +-NumericLiteral[numeric_string=1,float_like=false]
-  |     | +-right_operand=Literal
-  |     |   +-NumericLiteral[numeric_string=2,float_like=false]
-  |     +-Divide
-  |       +-left_operand=FunctionCall[name=AGG,is_star=true]
-  |       +-right_operand=Literal
-  |         +-NumericLiteral[numeric_string=2.0,float_like=true]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-FunctionCall[name=AGG]
+      |     +-Multiply
+      |     | +-left_operand=FunctionCall[name=AGG]
+      |     | | +-Add
+      |     | |   +-left_operand=FunctionCall[name=AGG]
+      |     | |   +-right_operand=Literal
+      |     | |     +-NumericLiteral[numeric_string=1,float_like=false]
+      |     | +-right_operand=Literal
+      |     |   +-NumericLiteral[numeric_string=2,float_like=false]
+      |     +-Divide
+      |       +-left_operand=FunctionCall[name=AGG,is_star=true]
+      |       +-right_operand=Literal
+      |         +-NumericLiteral[numeric_string=2.0,float_like=true]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT AGG(*, a) FROM test
@@ -98,93 +104,101 @@
 
 SELECT AGG()+1 FROM test GROUP BY a+1, AGG()+1 HAVING AGG()*2>1
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Add
-  |     +-left_operand=FunctionCall[name=AGG]
-  |     +-right_operand=Literal
-  |       +-NumericLiteral[numeric_string=1,float_like=false]
-  +-group_by=GroupBy
-  | +-Add
-  | | +-left_operand=AttributeReference[attribute_name=a]
-  | | +-right_operand=Literal
-  | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-Add
-  |   +-left_operand=FunctionCall[name=AGG]
-  |   +-right_operand=Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-having=HAVING
-  | +-Greater
-  |   +-left_operand=Multiply
-  |   | +-left_operand=FunctionCall[name=AGG]
-  |   | +-right_operand=Literal
-  |   |   +-NumericLiteral[numeric_string=2,float_like=false]
-  |   +-right_operand=Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Add
+      |     +-left_operand=FunctionCall[name=AGG]
+      |     +-right_operand=Literal
+      |       +-NumericLiteral[numeric_string=1,float_like=false]
+      +-group_by=GroupBy
+      | +-Add
+      | | +-left_operand=AttributeReference[attribute_name=a]
+      | | +-right_operand=Literal
+      | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-Add
+      |   +-left_operand=FunctionCall[name=AGG]
+      |   +-right_operand=Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-having=HAVING
+      | +-Greater
+      |   +-left_operand=Multiply
+      |   | +-left_operand=FunctionCall[name=AGG]
+      |   | +-right_operand=Literal
+      |   |   +-NumericLiteral[numeric_string=2,float_like=false]
+      |   +-right_operand=Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1 FROM test HAVING AGG() > 1 AND 1=1
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-having=HAVING
-  | +-And
-  |   +-Greater
-  |   | +-left_operand=FunctionCall[name=AGG]
-  |   | +-right_operand=Literal
-  |   |   +-NumericLiteral[numeric_string=1,float_like=false]
-  |   +-Equal
-  |     +-left_operand=Literal
-  |     | +-NumericLiteral[numeric_string=1,float_like=false]
-  |     +-right_operand=Literal
-  |       +-NumericLiteral[numeric_string=1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-having=HAVING
+      | +-And
+      |   +-Greater
+      |   | +-left_operand=FunctionCall[name=AGG]
+      |   | +-right_operand=Literal
+      |   |   +-NumericLiteral[numeric_string=1,float_like=false]
+      |   +-Equal
+      |     +-left_operand=Literal
+      |     | +-NumericLiteral[numeric_string=1,float_like=false]
+      |     +-right_operand=Literal
+      |       +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1 FROM test GROUP BY AGG()+1, AGG()/AGG()
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-group_by=GroupBy
-  | +-Add
-  | | +-left_operand=FunctionCall[name=AGG]
-  | | +-right_operand=Literal
-  | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-Divide
-  |   +-left_operand=FunctionCall[name=AGG]
-  |   +-right_operand=FunctionCall[name=AGG]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-group_by=GroupBy
+      | +-Add
+      | | +-left_operand=FunctionCall[name=AGG]
+      | | +-right_operand=Literal
+      | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-Divide
+      |   +-left_operand=FunctionCall[name=AGG]
+      |   +-right_operand=FunctionCall[name=AGG]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT AGG(DISTINCT x), AGG(y) FROM test GROUP BY z
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-FunctionCall[name=AGG,is_distinct=true]
-  | |   +-AttributeReference[attribute_name=x]
-  | +-SelectListItem
-  |   +-FunctionCall[name=AGG]
-  |     +-AttributeReference[attribute_name=y]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=z]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-FunctionCall[name=AGG,is_distinct=true]
+      | |   +-AttributeReference[attribute_name=x]
+      | +-SelectListItem
+      |   +-FunctionCall[name=AGG]
+      |     +-AttributeReference[attribute_name=y]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=z]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT AGG(DISTINCT FUN(x) + y) * AGG(z)
@@ -192,29 +206,31 @@
 GROUP BY z
 HAVING AGG(DISTINCT w) + AGG(s) > 1
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Multiply
-  |     +-left_operand=FunctionCall[name=AGG,is_distinct=true]
-  |     | +-Add
-  |     |   +-left_operand=FunctionCall[name=FUN]
-  |     |   | +-AttributeReference[attribute_name=x]
-  |     |   +-right_operand=AttributeReference[attribute_name=y]
-  |     +-right_operand=FunctionCall[name=AGG]
-  |       +-AttributeReference[attribute_name=z]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=z]
-  +-having=HAVING
-  | +-Greater
-  |   +-left_operand=Add
-  |   | +-left_operand=FunctionCall[name=AGG,is_distinct=true]
-  |   | | +-AttributeReference[attribute_name=w]
-  |   | +-right_operand=FunctionCall[name=AGG]
-  |   |   +-AttributeReference[attribute_name=s]
-  |   +-right_operand=Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Multiply
+      |     +-left_operand=FunctionCall[name=AGG,is_distinct=true]
+      |     | +-Add
+      |     |   +-left_operand=FunctionCall[name=FUN]
+      |     |   | +-AttributeReference[attribute_name=x]
+      |     |   +-right_operand=AttributeReference[attribute_name=y]
+      |     +-right_operand=FunctionCall[name=AGG]
+      |       +-AttributeReference[attribute_name=z]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=z]
+      +-having=HAVING
+      | +-Greater
+      |   +-left_operand=Add
+      |   | +-left_operand=FunctionCall[name=AGG,is_distinct=true]
+      |   | | +-AttributeReference[attribute_name=w]
+      |   | +-right_operand=FunctionCall[name=AGG]
+      |   |   +-AttributeReference[attribute_name=s]
+      |   +-right_operand=Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
diff --git a/parser/tests/CMakeLists.txt b/parser/tests/CMakeLists.txt
index 9b461ec..63bcd1c 100644
--- a/parser/tests/CMakeLists.txt
+++ b/parser/tests/CMakeLists.txt
@@ -68,6 +68,10 @@
          quickstep_parser_tests_ParserTest
          "${CMAKE_CURRENT_SOURCE_DIR}/Select.test"
          "${CMAKE_CURRENT_BINARY_DIR}/Select.test")
+add_test(quickstep_parser_tests_ParserTest_setoperation
+         quickstep_parser_tests_ParserTest
+         "${CMAKE_CURRENT_SOURCE_DIR}/SetOperation.test"
+         "${CMAKE_CURRENT_BINARY_DIR}/SetOperation.test")
 add_test(quickstep_parser_tests_ParserTest_tpch
          quickstep_parser_tests_ParserTest
          "${CMAKE_CURRENT_SOURCE_DIR}/TPCH.test"
diff --git a/parser/tests/Join.test b/parser/tests/Join.test
index 63edeb4..d8ac83f 100644
--- a/parser/tests/Join.test
+++ b/parser/tests/Join.test
@@ -20,26 +20,31 @@
        JOIN c ON a.x = c.x
        JOIN d ON a.y = d.y;
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-from_clause=
-    +-JoinedTable[join_type=InnerJoin]
-      +-left_table=JoinedTable[join_type=InnerJoin]
-      | +-left_table=JoinedTable[join_type=InnerJoin]
-      | | +-left_table=TableReference[table=a]
-      | | +-right_table=TableReference[table=b]
-      | | +-join_predicate=Equal
-      | |   +-left_operand=AttributeReference[attribute_name=w,relation_name=a]
-      | |   +-right_operand=AttributeReference[attribute_name=w,relation_name=b]
-      | +-right_table=TableReference[table=c]
-      | +-join_predicate=Equal
-      |   +-left_operand=AttributeReference[attribute_name=x,relation_name=a]
-      |   +-right_operand=AttributeReference[attribute_name=x,relation_name=c]
-      +-right_table=TableReference[table=d]
-      +-join_predicate=Equal
-        +-left_operand=AttributeReference[attribute_name=y,relation_name=a]
-        +-right_operand=AttributeReference[attribute_name=y,relation_name=d]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-from_clause=
+        +-JoinedTable[join_type=InnerJoin]
+          +-left_table=JoinedTable[join_type=InnerJoin]
+          | +-left_table=JoinedTable[join_type=InnerJoin]
+          | | +-left_table=TableReference[table=a]
+          | | +-right_table=TableReference[table=b]
+          | | +-join_predicate=Equal
+          | |   +-left_operand=AttributeReference[attribute_name=w,
+          | |   | relation_name=a]
+          | |   +-right_operand=AttributeReference[attribute_name=w,
+          | |     relation_name=b]
+          | +-right_table=TableReference[table=c]
+          | +-join_predicate=Equal
+          |   +-left_operand=AttributeReference[attribute_name=x,relation_name=a]
+          |   +-right_operand=AttributeReference[attribute_name=x,
+          |     relation_name=c]
+          +-right_table=TableReference[table=d]
+          +-join_predicate=Equal
+            +-left_operand=AttributeReference[attribute_name=y,relation_name=a]
+            +-right_operand=AttributeReference[attribute_name=y,relation_name=d]
 ==
 
 SELECT *
@@ -50,30 +55,36 @@
   AND a1.y > c1.y
   AND a1.z > d1.z;
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-from_clause=
-    +-JoinedTable[join_type=InnerJoin]
-      +-left_table=JoinedTable[join_type=InnerJoin]
-      | +-left_table=JoinedTable[join_type=InnerJoin]
-      | | +-left_table=TableReference[table=a]
-      | | | +-table_signature=TableSignature[table_alias=a1]
-      | | +-right_table=TableReference[table=b]
-      | | | +-table_signature=TableSignature[table_alias=b1]
-      | | +-join_predicate=Equal
-      | |   +-left_operand=AttributeReference[attribute_name=w,relation_name=a1]
-      | |   +-right_operand=AttributeReference[attribute_name=w,relation_name=b1]
-      | +-right_table=TableReference[table=c]
-      | | +-table_signature=TableSignature[table_alias=c1]
-      | +-join_predicate=Equal
-      |   +-left_operand=AttributeReference[attribute_name=x,relation_name=a1]
-      |   +-right_operand=AttributeReference[attribute_name=x,relation_name=c1]
-      +-right_table=TableReference[table=d]
-      | +-table_signature=TableSignature[table_alias=d1]
-      +-join_predicate=Equal
-        +-left_operand=AttributeReference[attribute_name=y,relation_name=a1]
-        +-right_operand=AttributeReference[attribute_name=y,relation_name=d1]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-from_clause=
+        +-JoinedTable[join_type=InnerJoin]
+          +-left_table=JoinedTable[join_type=InnerJoin]
+          | +-left_table=JoinedTable[join_type=InnerJoin]
+          | | +-left_table=TableReference[table=a]
+          | | | +-table_signature=TableSignature[table_alias=a1]
+          | | +-right_table=TableReference[table=b]
+          | | | +-table_signature=TableSignature[table_alias=b1]
+          | | +-join_predicate=Equal
+          | |   +-left_operand=AttributeReference[attribute_name=w,
+          | |   | relation_name=a1]
+          | |   +-right_operand=AttributeReference[attribute_name=w,
+          | |     relation_name=b1]
+          | +-right_table=TableReference[table=c]
+          | | +-table_signature=TableSignature[table_alias=c1]
+          | +-join_predicate=Equal
+          |   +-left_operand=AttributeReference[attribute_name=x,
+          |   | relation_name=a1]
+          |   +-right_operand=AttributeReference[attribute_name=x,
+          |     relation_name=c1]
+          +-right_table=TableReference[table=d]
+          | +-table_signature=TableSignature[table_alias=d1]
+          +-join_predicate=Equal
+            +-left_operand=AttributeReference[attribute_name=y,relation_name=a1]
+            +-right_operand=AttributeReference[attribute_name=y,relation_name=d1]
 ==
 
 SELECT *
@@ -81,82 +92,97 @@
        RIGHT OUTER JOIN c ON a.x = c.x
        FULL OUTER JOIN d ON a.y = d.y;
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-from_clause=
-    +-JoinedTable[join_type=FullOuterJoin]
-      +-left_table=JoinedTable[join_type=RightOuterJoin]
-      | +-left_table=JoinedTable[join_type=LeftOuterJoin]
-      | | +-left_table=TableReference[table=a]
-      | | +-right_table=TableReference[table=b]
-      | | +-join_predicate=Equal
-      | |   +-left_operand=AttributeReference[attribute_name=w,relation_name=a]
-      | |   +-right_operand=AttributeReference[attribute_name=w,relation_name=b]
-      | +-right_table=TableReference[table=c]
-      | +-join_predicate=Equal
-      |   +-left_operand=AttributeReference[attribute_name=x,relation_name=a]
-      |   +-right_operand=AttributeReference[attribute_name=x,relation_name=c]
-      +-right_table=TableReference[table=d]
-      +-join_predicate=Equal
-        +-left_operand=AttributeReference[attribute_name=y,relation_name=a]
-        +-right_operand=AttributeReference[attribute_name=y,relation_name=d]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-from_clause=
+        +-JoinedTable[join_type=FullOuterJoin]
+          +-left_table=JoinedTable[join_type=RightOuterJoin]
+          | +-left_table=JoinedTable[join_type=LeftOuterJoin]
+          | | +-left_table=TableReference[table=a]
+          | | +-right_table=TableReference[table=b]
+          | | +-join_predicate=Equal
+          | |   +-left_operand=AttributeReference[attribute_name=w,
+          | |   | relation_name=a]
+          | |   +-right_operand=AttributeReference[attribute_name=w,
+          | |     relation_name=b]
+          | +-right_table=TableReference[table=c]
+          | +-join_predicate=Equal
+          |   +-left_operand=AttributeReference[attribute_name=x,relation_name=a]
+          |   +-right_operand=AttributeReference[attribute_name=x,
+          |     relation_name=c]
+          +-right_table=TableReference[table=d]
+          +-join_predicate=Equal
+            +-left_operand=AttributeReference[attribute_name=y,relation_name=a]
+            +-right_operand=AttributeReference[attribute_name=y,relation_name=d]
 ==
 
 SELECT *
 FROM a INNER JOIN b ON (a.w = b.w OR a.x > b.y);
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-from_clause=
-    +-JoinedTable[join_type=InnerJoin]
-      +-left_table=TableReference[table=a]
-      +-right_table=TableReference[table=b]
-      +-join_predicate=Or
-        +-Equal
-        | +-left_operand=AttributeReference[attribute_name=w,relation_name=a]
-        | +-right_operand=AttributeReference[attribute_name=w,relation_name=b]
-        +-Greater
-          +-left_operand=AttributeReference[attribute_name=x,relation_name=a]
-          +-right_operand=AttributeReference[attribute_name=y,relation_name=b]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-from_clause=
+        +-JoinedTable[join_type=InnerJoin]
+          +-left_table=TableReference[table=a]
+          +-right_table=TableReference[table=b]
+          +-join_predicate=Or
+            +-Equal
+            | +-left_operand=AttributeReference[attribute_name=w,relation_name=a]
+            | +-right_operand=AttributeReference[attribute_name=w,
+            |   relation_name=b]
+            +-Greater
+              +-left_operand=AttributeReference[attribute_name=x,relation_name=a]
+              +-right_operand=AttributeReference[attribute_name=y,
+                relation_name=b]
 ==
 
 SELECT *
 FROM b LEFT JOIN c ON b.x = c.x JOIN d ON c.y = d.y;
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-from_clause=
-    +-JoinedTable[join_type=InnerJoin]
-      +-left_table=JoinedTable[join_type=LeftOuterJoin]
-      | +-left_table=TableReference[table=b]
-      | +-right_table=TableReference[table=c]
-      | +-join_predicate=Equal
-      |   +-left_operand=AttributeReference[attribute_name=x,relation_name=b]
-      |   +-right_operand=AttributeReference[attribute_name=x,relation_name=c]
-      +-right_table=TableReference[table=d]
-      +-join_predicate=Equal
-        +-left_operand=AttributeReference[attribute_name=y,relation_name=c]
-        +-right_operand=AttributeReference[attribute_name=y,relation_name=d]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-from_clause=
+        +-JoinedTable[join_type=InnerJoin]
+          +-left_table=JoinedTable[join_type=LeftOuterJoin]
+          | +-left_table=TableReference[table=b]
+          | +-right_table=TableReference[table=c]
+          | +-join_predicate=Equal
+          |   +-left_operand=AttributeReference[attribute_name=x,relation_name=b]
+          |   +-right_operand=AttributeReference[attribute_name=x,
+          |     relation_name=c]
+          +-right_table=TableReference[table=d]
+          +-join_predicate=Equal
+            +-left_operand=AttributeReference[attribute_name=y,relation_name=c]
+            +-right_operand=AttributeReference[attribute_name=y,relation_name=d]
 ==
 
 SELECT *
 FROM b LEFT JOIN (c JOIN d ON c.y = d.y) ON b.x = c.x;
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-from_clause=
-    +-JoinedTable[join_type=LeftOuterJoin]
-      +-left_table=TableReference[table=b]
-      +-right_table=JoinedTable[join_type=InnerJoin]
-      | +-left_table=TableReference[table=c]
-      | +-right_table=TableReference[table=d]
-      | +-join_predicate=Equal
-      |   +-left_operand=AttributeReference[attribute_name=y,relation_name=c]
-      |   +-right_operand=AttributeReference[attribute_name=y,relation_name=d]
-      +-join_predicate=Equal
-        +-left_operand=AttributeReference[attribute_name=x,relation_name=b]
-        +-right_operand=AttributeReference[attribute_name=x,relation_name=c]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-from_clause=
+        +-JoinedTable[join_type=LeftOuterJoin]
+          +-left_table=TableReference[table=b]
+          +-right_table=JoinedTable[join_type=InnerJoin]
+          | +-left_table=TableReference[table=c]
+          | +-right_table=TableReference[table=d]
+          | +-join_predicate=Equal
+          |   +-left_operand=AttributeReference[attribute_name=y,relation_name=c]
+          |   +-right_operand=AttributeReference[attribute_name=y,
+          |     relation_name=d]
+          +-join_predicate=Equal
+            +-left_operand=AttributeReference[attribute_name=x,relation_name=b]
+            +-right_operand=AttributeReference[attribute_name=x,relation_name=c]
diff --git a/parser/tests/Select.test b/parser/tests/Select.test
index 8e47519..1618807 100644
--- a/parser/tests/Select.test
+++ b/parser/tests/Select.test
@@ -17,11 +17,13 @@
 
 SELECT * FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 # If the error location is beyond the end of the SQL,
@@ -91,70 +93,72 @@
 
 SELECT 1, 2, 1+1, 1-1, 1-1.2+1-2.3, attr1, attr2, attr1+1, attr1+1*2+attr2, attr1+1*(2+attr2) FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=2,float_like=false]
-  | +-SelectListItem
-  | | +-Add
-  | |   +-left_operand=Literal
-  | |   | +-NumericLiteral[numeric_string=1,float_like=false]
-  | |   +-right_operand=Literal
-  | |     +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-SelectListItem
-  | | +-Subtract
-  | |   +-left_operand=Literal
-  | |   | +-NumericLiteral[numeric_string=1,float_like=false]
-  | |   +-right_operand=Literal
-  | |     +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-SelectListItem
-  | | +-Subtract
-  | |   +-left_operand=Add
-  | |   | +-left_operand=Subtract
-  | |   | | +-left_operand=Literal
-  | |   | | | +-NumericLiteral[numeric_string=1,float_like=false]
-  | |   | | +-right_operand=Literal
-  | |   | |   +-NumericLiteral[numeric_string=1.2,float_like=true]
-  | |   | +-right_operand=Literal
-  | |   |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | |   +-right_operand=Literal
-  | |     +-NumericLiteral[numeric_string=2.3,float_like=true]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=attr1]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=attr2]
-  | +-SelectListItem
-  | | +-Add
-  | |   +-left_operand=AttributeReference[attribute_name=attr1]
-  | |   +-right_operand=Literal
-  | |     +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-SelectListItem
-  | | +-Add
-  | |   +-left_operand=Add
-  | |   | +-left_operand=AttributeReference[attribute_name=attr1]
-  | |   | +-right_operand=Multiply
-  | |   |   +-left_operand=Literal
-  | |   |   | +-NumericLiteral[numeric_string=1,float_like=false]
-  | |   |   +-right_operand=Literal
-  | |   |     +-NumericLiteral[numeric_string=2,float_like=false]
-  | |   +-right_operand=AttributeReference[attribute_name=attr2]
-  | +-SelectListItem
-  |   +-Add
-  |     +-left_operand=AttributeReference[attribute_name=attr1]
-  |     +-right_operand=Multiply
-  |       +-left_operand=Literal
-  |       | +-NumericLiteral[numeric_string=1,float_like=false]
-  |       +-right_operand=Add
-  |         +-left_operand=Literal
-  |         | +-NumericLiteral[numeric_string=2,float_like=false]
-  |         +-right_operand=AttributeReference[attribute_name=attr2]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=2,float_like=false]
+      | +-SelectListItem
+      | | +-Add
+      | |   +-left_operand=Literal
+      | |   | +-NumericLiteral[numeric_string=1,float_like=false]
+      | |   +-right_operand=Literal
+      | |     +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-SelectListItem
+      | | +-Subtract
+      | |   +-left_operand=Literal
+      | |   | +-NumericLiteral[numeric_string=1,float_like=false]
+      | |   +-right_operand=Literal
+      | |     +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-SelectListItem
+      | | +-Subtract
+      | |   +-left_operand=Add
+      | |   | +-left_operand=Subtract
+      | |   | | +-left_operand=Literal
+      | |   | | | +-NumericLiteral[numeric_string=1,float_like=false]
+      | |   | | +-right_operand=Literal
+      | |   | |   +-NumericLiteral[numeric_string=1.2,float_like=true]
+      | |   | +-right_operand=Literal
+      | |   |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | |   +-right_operand=Literal
+      | |     +-NumericLiteral[numeric_string=2.3,float_like=true]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=attr1]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=attr2]
+      | +-SelectListItem
+      | | +-Add
+      | |   +-left_operand=AttributeReference[attribute_name=attr1]
+      | |   +-right_operand=Literal
+      | |     +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-SelectListItem
+      | | +-Add
+      | |   +-left_operand=Add
+      | |   | +-left_operand=AttributeReference[attribute_name=attr1]
+      | |   | +-right_operand=Multiply
+      | |   |   +-left_operand=Literal
+      | |   |   | +-NumericLiteral[numeric_string=1,float_like=false]
+      | |   |   +-right_operand=Literal
+      | |   |     +-NumericLiteral[numeric_string=2,float_like=false]
+      | |   +-right_operand=AttributeReference[attribute_name=attr2]
+      | +-SelectListItem
+      |   +-Add
+      |     +-left_operand=AttributeReference[attribute_name=attr1]
+      |     +-right_operand=Multiply
+      |       +-left_operand=Literal
+      |       | +-NumericLiteral[numeric_string=1,float_like=false]
+      |       +-right_operand=Add
+      |         +-left_operand=Literal
+      |         | +-NumericLiteral[numeric_string=2,float_like=false]
+      |         +-right_operand=AttributeReference[attribute_name=attr2]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT * FROM 123
@@ -167,52 +171,58 @@
 # Alias
 SELECT 1 AS a, 2+1 AS b, 3 a, 4 b FROM test AS a, test a
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem[alias=a]
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-SelectListItem[alias=b]
-  | | +-Add
-  | |   +-left_operand=Literal
-  | |   | +-NumericLiteral[numeric_string=2,float_like=false]
-  | |   +-right_operand=Literal
-  | |     +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-SelectListItem[alias=a]
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=3,float_like=false]
-  | +-SelectListItem[alias=b]
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=4,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
-    | +-table_signature=TableSignature[table_alias=a]
-    +-TableReference[table=test]
-      +-table_signature=TableSignature[table_alias=a]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem[alias=a]
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-SelectListItem[alias=b]
+      | | +-Add
+      | |   +-left_operand=Literal
+      | |   | +-NumericLiteral[numeric_string=2,float_like=false]
+      | |   +-right_operand=Literal
+      | |     +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-SelectListItem[alias=a]
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=3,float_like=false]
+      | +-SelectListItem[alias=b]
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=4,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
+        | +-table_signature=TableSignature[table_alias=a]
+        +-TableReference[table=test]
+          +-table_signature=TableSignature[table_alias=a]
 ==
 
 # Column list aliases in FROM.
 SELECT 1 FROM test test_alias(attr, attr1, attr2, attr3), (SELECT * FROM test) AS subquery(attr1, attr1, attr4)
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
-    | +-table_signature=TableSignature[table_alias=test_alias,
-    |   columns=(attr, attr1, attr2, attr3)]
-    +-SubqueryTable
-      +-table_signature=TableSignature[table_alias=subquery,
-      | columns=(attr1, attr1, attr4)]
-      +-SubqueryExpression
-        +-Select
-          +-select_clause=SelectStar
-          +-from_clause=
-            +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
+        | +-table_signature=TableSignature[table_alias=test_alias,
+        |   columns=(attr, attr1, attr2, attr3)]
+        +-SubqueryTable
+          +-table_signature=TableSignature[table_alias=subquery,
+          | columns=(attr1, attr1, attr4)]
+          +-SubqueryExpression
+            +-SetOperation[set_operation_type=Select]
+              +-children=
+                +-Select
+                  +-select_clause=SelectStar
+                  +-from_clause=
+                    +-TableReference[table=test]
 ==
 
 # Table subquery must be named.
@@ -253,147 +263,157 @@
 
 SELECT 1 FROM test WHERE 1=1 AND attr1=1 AND attr+1>=1 AND attr-1<=1 AND attr+1>1 AND attr-1<1
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-where_clause=And
-  | +-Equal
-  | | +-left_operand=Literal
-  | | | +-NumericLiteral[numeric_string=1,float_like=false]
-  | | +-right_operand=Literal
-  | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=attr1]
-  | | +-right_operand=Literal
-  | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-GreaterOrEqual
-  | | +-left_operand=Add
-  | | | +-left_operand=AttributeReference[attribute_name=attr]
-  | | | +-right_operand=Literal
-  | | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | | +-right_operand=Literal
-  | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-LessOrEqual
-  | | +-left_operand=Subtract
-  | | | +-left_operand=AttributeReference[attribute_name=attr]
-  | | | +-right_operand=Literal
-  | | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | | +-right_operand=Literal
-  | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-Greater
-  | | +-left_operand=Add
-  | | | +-left_operand=AttributeReference[attribute_name=attr]
-  | | | +-right_operand=Literal
-  | | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | | +-right_operand=Literal
-  | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-Less
-  |   +-left_operand=Subtract
-  |   | +-left_operand=AttributeReference[attribute_name=attr]
-  |   | +-right_operand=Literal
-  |   |   +-NumericLiteral[numeric_string=1,float_like=false]
-  |   +-right_operand=Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-where_clause=And
+      | +-Equal
+      | | +-left_operand=Literal
+      | | | +-NumericLiteral[numeric_string=1,float_like=false]
+      | | +-right_operand=Literal
+      | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=attr1]
+      | | +-right_operand=Literal
+      | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-GreaterOrEqual
+      | | +-left_operand=Add
+      | | | +-left_operand=AttributeReference[attribute_name=attr]
+      | | | +-right_operand=Literal
+      | | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | | +-right_operand=Literal
+      | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-LessOrEqual
+      | | +-left_operand=Subtract
+      | | | +-left_operand=AttributeReference[attribute_name=attr]
+      | | | +-right_operand=Literal
+      | | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | | +-right_operand=Literal
+      | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-Greater
+      | | +-left_operand=Add
+      | | | +-left_operand=AttributeReference[attribute_name=attr]
+      | | | +-right_operand=Literal
+      | | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | | +-right_operand=Literal
+      | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-Less
+      |   +-left_operand=Subtract
+      |   | +-left_operand=AttributeReference[attribute_name=attr]
+      |   | +-right_operand=Literal
+      |   |   +-NumericLiteral[numeric_string=1,float_like=false]
+      |   +-right_operand=Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1 FROM test WHERE attr BETWEEN 1 AND 2 AND attr BETWEEN 2 AND 1
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-where_clause=And
-  | +-Between
-  | | +-check_operand=AttributeReference[attribute_name=attr]
-  | | +-lower_bound_operand=Literal
-  | | | +-NumericLiteral[numeric_string=1,float_like=false]
-  | | +-upper_bound_operand=Literal
-  | |   +-NumericLiteral[numeric_string=2,float_like=false]
-  | +-Between
-  |   +-check_operand=AttributeReference[attribute_name=attr]
-  |   +-lower_bound_operand=Literal
-  |   | +-NumericLiteral[numeric_string=2,float_like=false]
-  |   +-upper_bound_operand=Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-where_clause=And
+      | +-Between
+      | | +-check_operand=AttributeReference[attribute_name=attr]
+      | | +-lower_bound_operand=Literal
+      | | | +-NumericLiteral[numeric_string=1,float_like=false]
+      | | +-upper_bound_operand=Literal
+      | |   +-NumericLiteral[numeric_string=2,float_like=false]
+      | +-Between
+      |   +-check_operand=AttributeReference[attribute_name=attr]
+      |   +-lower_bound_operand=Literal
+      |   | +-NumericLiteral[numeric_string=2,float_like=false]
+      |   +-upper_bound_operand=Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1 FROM test WHERE attr NOT BETWEEN 1 AND 2
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-where_clause=Not
-  | +-Between
-  |   +-check_operand=AttributeReference[attribute_name=attr]
-  |   +-lower_bound_operand=Literal
-  |   | +-NumericLiteral[numeric_string=1,float_like=false]
-  |   +-upper_bound_operand=Literal
-  |     +-NumericLiteral[numeric_string=2,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-where_clause=Not
+      | +-Between
+      |   +-check_operand=AttributeReference[attribute_name=attr]
+      |   +-lower_bound_operand=Literal
+      |   | +-NumericLiteral[numeric_string=1,float_like=false]
+      |   +-upper_bound_operand=Literal
+      |     +-NumericLiteral[numeric_string=2,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1 FROM test ORDER BY attr, 1
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  | | +-AttributeReference[attribute_name=attr]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      | | +-AttributeReference[attribute_name=attr]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT fun(attr)+1 FROM test GROUP BY fun()+fun(attr), attr1+attr2 HAVING attr1>1 AND fun(*)>1
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Add
-  |     +-left_operand=FunctionCall[name=fun]
-  |     | +-AttributeReference[attribute_name=attr]
-  |     +-right_operand=Literal
-  |       +-NumericLiteral[numeric_string=1,float_like=false]
-  +-group_by=GroupBy
-  | +-Add
-  | | +-left_operand=FunctionCall[name=fun]
-  | | +-right_operand=FunctionCall[name=fun]
-  | |   +-AttributeReference[attribute_name=attr]
-  | +-Add
-  |   +-left_operand=AttributeReference[attribute_name=attr1]
-  |   +-right_operand=AttributeReference[attribute_name=attr2]
-  +-having=HAVING
-  | +-And
-  |   +-Greater
-  |   | +-left_operand=AttributeReference[attribute_name=attr1]
-  |   | +-right_operand=Literal
-  |   |   +-NumericLiteral[numeric_string=1,float_like=false]
-  |   +-Greater
-  |     +-left_operand=FunctionCall[name=fun,is_star=true]
-  |     +-right_operand=Literal
-  |       +-NumericLiteral[numeric_string=1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Add
+      |     +-left_operand=FunctionCall[name=fun]
+      |     | +-AttributeReference[attribute_name=attr]
+      |     +-right_operand=Literal
+      |       +-NumericLiteral[numeric_string=1,float_like=false]
+      +-group_by=GroupBy
+      | +-Add
+      | | +-left_operand=FunctionCall[name=fun]
+      | | +-right_operand=FunctionCall[name=fun]
+      | |   +-AttributeReference[attribute_name=attr]
+      | +-Add
+      |   +-left_operand=AttributeReference[attribute_name=attr1]
+      |   +-right_operand=AttributeReference[attribute_name=attr2]
+      +-having=HAVING
+      | +-And
+      |   +-Greater
+      |   | +-left_operand=AttributeReference[attribute_name=attr1]
+      |   | +-right_operand=Literal
+      |   |   +-NumericLiteral[numeric_string=1,float_like=false]
+      |   +-Greater
+      |     +-left_operand=FunctionCall[name=fun,is_star=true]
+      |     +-right_operand=Literal
+      |       +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 # ORDER BY
@@ -404,52 +424,56 @@
                             attr1+1 NULLS FIRST,
                             fun(attr)/2
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-OrderByItem[is_asc=false,nulls_first=true]
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=2,float_like=false]
-  | +-OrderByItem[is_asc=true,nulls_first=true]
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=3,float_like=false]
-  | +-OrderByItem[is_asc=false,nulls_first=false]
-  | | +-AttributeReference[attribute_name=attr1]
-  | +-OrderByItem[is_asc=true,nulls_first=true]
-  | | +-Add
-  | |   +-left_operand=AttributeReference[attribute_name=attr1]
-  | |   +-right_operand=Literal
-  | |     +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-Divide
-  |     +-left_operand=FunctionCall[name=fun]
-  |     | +-AttributeReference[attribute_name=attr]
-  |     +-right_operand=Literal
-  |       +-NumericLiteral[numeric_string=2,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-OrderByItem[is_asc=false,nulls_first=true]
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=2,float_like=false]
+      | +-OrderByItem[is_asc=true,nulls_first=true]
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=3,float_like=false]
+      | +-OrderByItem[is_asc=false,nulls_first=false]
+      | | +-AttributeReference[attribute_name=attr1]
+      | +-OrderByItem[is_asc=true,nulls_first=true]
+      | | +-Add
+      | |   +-left_operand=AttributeReference[attribute_name=attr1]
+      | |   +-right_operand=Literal
+      | |     +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-Divide
+      |     +-left_operand=FunctionCall[name=fun]
+      |     | +-AttributeReference[attribute_name=attr]
+      |     +-right_operand=Literal
+      |       +-NumericLiteral[numeric_string=2,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 # Limit
 SELECT 1 FROM test LIMIT 1
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-limit=LIMIT
-  | +-NumericLiteral[numeric_string=1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-limit=LIMIT
+      | +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1 FROM test LIMIT 1.1
@@ -483,14 +507,16 @@
 # Priority
 SELECT 1 FROM test WITH PRIORITY 1
 --
-SelectStatement
-+-select_query=Select
-| +-select_clause=SelectList
-| | +-SelectListItem
-| |   +-Literal
-| |     +-NumericLiteral[numeric_string=1,float_like=false]
-| +-from_clause=
-|   +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+| +-children=
+|   +-Select
+|     +-select_clause=SelectList
+|     | +-SelectListItem
+|     |   +-Literal
+|     |     +-NumericLiteral[numeric_string=1,float_like=false]
+|     +-from_clause=
+|       +-TableReference[table=test]
 +-priority=PRIORITY
   +-NumericLiteral[numeric_string=1,float_like=false]
 ==
@@ -530,25 +556,31 @@
 # Subqueries in the FROM clause.
 SELECT * FROM test, (select * FROM test) AS a, (select * FROM test) a
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-from_clause=
-    +-TableReference[table=test]
-    +-SubqueryTable
-    | +-table_signature=TableSignature[table_alias=a]
-    | +-SubqueryExpression
-    |   +-Select
-    |     +-select_clause=SelectStar
-    |     +-from_clause=
-    |       +-TableReference[table=test]
-    +-SubqueryTable
-      +-table_signature=TableSignature[table_alias=a]
-      +-SubqueryExpression
-        +-Select
-          +-select_clause=SelectStar
-          +-from_clause=
-            +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-from_clause=
+        +-TableReference[table=test]
+        +-SubqueryTable
+        | +-table_signature=TableSignature[table_alias=a]
+        | +-SubqueryExpression
+        |   +-SetOperation[set_operation_type=Select]
+        |     +-children=
+        |       +-Select
+        |         +-select_clause=SelectStar
+        |         +-from_clause=
+        |           +-TableReference[table=test]
+        +-SubqueryTable
+          +-table_signature=TableSignature[table_alias=a]
+          +-SubqueryExpression
+            +-SetOperation[set_operation_type=Select]
+              +-children=
+                +-Select
+                  +-select_clause=SelectStar
+                  +-from_clause=
+                    +-TableReference[table=test]
 ==
 
 SELECT * FROM test, SELECT * FROM test
@@ -560,68 +592,84 @@
 
 SELECT * FROM (select * FROM (select * FROM (select * FROM test) a ) a ) a
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-from_clause=
-    +-SubqueryTable
-      +-table_signature=TableSignature[table_alias=a]
-      +-SubqueryExpression
-        +-Select
-          +-select_clause=SelectStar
-          +-from_clause=
-            +-SubqueryTable
-              +-table_signature=TableSignature[table_alias=a]
-              +-SubqueryExpression
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-from_clause=
+        +-SubqueryTable
+          +-table_signature=TableSignature[table_alias=a]
+          +-SubqueryExpression
+            +-SetOperation[set_operation_type=Select]
+              +-children=
                 +-Select
                   +-select_clause=SelectStar
                   +-from_clause=
                     +-SubqueryTable
                       +-table_signature=TableSignature[table_alias=a]
                       +-SubqueryExpression
-                        +-Select
-                          +-select_clause=SelectStar
-                          +-from_clause=
-                            +-TableReference[table=test]
+                        +-SetOperation[set_operation_type=Select]
+                          +-children=
+                            +-Select
+                              +-select_clause=SelectStar
+                              +-from_clause=
+                                +-SubqueryTable
+                                  +-table_signature=TableSignature[table_alias=a]
+                                  +-SubqueryExpression
+                                    +-SetOperation[set_operation_type=Select]
+                                      +-children=
+                                        +-Select
+                                          +-select_clause=SelectStar
+                                          +-from_clause=
+                                            +-TableReference[table=test]
 ==
 
 # Subqueries are not supported yet in clauses other than the FROM clause.
 SELECT (select * FROM test) FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-SubqueryExpression
-  |     +-Select
-  |       +-select_clause=SelectStar
-  |       +-from_clause=
-  |         +-TableReference[table=test]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-SubqueryExpression
+      |     +-SetOperation[set_operation_type=Select]
+      |       +-children=
+      |         +-Select
+      |           +-select_clause=SelectStar
+      |           +-from_clause=
+      |             +-TableReference[table=test]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1 FROM test WHERE 1 > (select 1 FROM test)
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-where_clause=Greater
-  | +-left_operand=Literal
-  | | +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-right_operand=SubqueryExpression
-  |   +-Select
-  |     +-select_clause=SelectList
-  |     | +-SelectListItem
-  |     |   +-Literal
-  |     |     +-NumericLiteral[numeric_string=1,float_like=false]
-  |     +-from_clause=
-  |       +-TableReference[table=test]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-where_clause=Greater
+      | +-left_operand=Literal
+      | | +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-right_operand=SubqueryExpression
+      |   +-SetOperation[set_operation_type=Select]
+      |     +-children=
+      |       +-Select
+      |         +-select_clause=SelectList
+      |         | +-SelectListItem
+      |         |   +-Literal
+      |         |     +-NumericLiteral[numeric_string=1,float_like=false]
+      |         +-from_clause=
+      |           +-TableReference[table=test]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 #
@@ -632,82 +680,96 @@
      c AS (SELECT 1 FROM test)
 SELECT 1 FROM a, b, c, d
 --
-SelectStatement
-+-select_query=Select
-| +-select_clause=SelectList
-| | +-SelectListItem
-| |   +-Literal
-| |     +-NumericLiteral[numeric_string=1,float_like=false]
-| +-from_clause=
-|   +-TableReference[table=a]
-|   +-TableReference[table=b]
-|   +-TableReference[table=c]
-|   +-TableReference[table=d]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+| +-children=
+|   +-Select
+|     +-select_clause=SelectList
+|     | +-SelectListItem
+|     |   +-Literal
+|     |     +-NumericLiteral[numeric_string=1,float_like=false]
+|     +-from_clause=
+|       +-TableReference[table=a]
+|       +-TableReference[table=b]
+|       +-TableReference[table=c]
+|       +-TableReference[table=d]
 +-with_clause=
   +-SubqueryTable
   | +-table_signature=TableSignature[table_alias=a,columns=(col)]
   | +-SubqueryExpression
-  |   +-Select
-  |     +-select_clause=SelectList
-  |     | +-SelectListItem
-  |     |   +-Literal
-  |     |     +-NumericLiteral[numeric_string=1,float_like=false]
-  |     +-group_by=GroupBy
-  |     | +-AttributeReference[attribute_name=a]
-  |     +-order_by=OrderBy
-  |     | +-OrderByItem[is_asc=true,nulls_first=false]
-  |     |   +-AttributeReference[attribute_name=b]
-  |     +-limit=LIMIT
-  |     | +-NumericLiteral[numeric_string=1,float_like=false]
-  |     +-from_clause=
-  |       +-TableReference[table=test]
+  |   +-SetOperation[set_operation_type=Select]
+  |     +-children=
+  |       +-Select
+  |         +-select_clause=SelectList
+  |         | +-SelectListItem
+  |         |   +-Literal
+  |         |     +-NumericLiteral[numeric_string=1,float_like=false]
+  |         +-group_by=GroupBy
+  |         | +-AttributeReference[attribute_name=a]
+  |         +-order_by=OrderBy
+  |         | +-OrderByItem[is_asc=true,nulls_first=false]
+  |         |   +-AttributeReference[attribute_name=b]
+  |         +-limit=LIMIT
+  |         | +-NumericLiteral[numeric_string=1,float_like=false]
+  |         +-from_clause=
+  |           +-TableReference[table=test]
   +-SubqueryTable
   | +-table_signature=TableSignature[table_alias=b,columns=(col1, col2, col3)]
   | +-SubqueryExpression
-  |   +-Select
-  |     +-select_clause=SelectStar
-  |     +-from_clause=
-  |       +-SubqueryTable
-  |         +-table_signature=TableSignature[table_alias=a]
-  |         +-SubqueryExpression
-  |           +-Select
-  |             +-select_clause=SelectStar
-  |             +-from_clause=
-  |               +-TableReference[table=test]
+  |   +-SetOperation[set_operation_type=Select]
+  |     +-children=
+  |       +-Select
+  |         +-select_clause=SelectStar
+  |         +-from_clause=
+  |           +-SubqueryTable
+  |             +-table_signature=TableSignature[table_alias=a]
+  |             +-SubqueryExpression
+  |               +-SetOperation[set_operation_type=Select]
+  |                 +-children=
+  |                   +-Select
+  |                     +-select_clause=SelectStar
+  |                     +-from_clause=
+  |                       +-TableReference[table=test]
   +-SubqueryTable
     +-table_signature=TableSignature[table_alias=c]
     +-SubqueryExpression
-      +-Select
-        +-select_clause=SelectList
-        | +-SelectListItem
-        |   +-Literal
-        |     +-NumericLiteral[numeric_string=1,float_like=false]
-        +-from_clause=
-          +-TableReference[table=test]
+      +-SetOperation[set_operation_type=Select]
+        +-children=
+          +-Select
+            +-select_clause=SelectList
+            | +-SelectListItem
+            |   +-Literal
+            |     +-NumericLiteral[numeric_string=1,float_like=false]
+            +-from_clause=
+              +-TableReference[table=test]
 ==
 
 WITH a AS (SELECT 1 FROM test)
 SELECT 1 FROM a
 --
-SelectStatement
-+-select_query=Select
-| +-select_clause=SelectList
-| | +-SelectListItem
-| |   +-Literal
-| |     +-NumericLiteral[numeric_string=1,float_like=false]
-| +-from_clause=
-|   +-TableReference[table=a]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+| +-children=
+|   +-Select
+|     +-select_clause=SelectList
+|     | +-SelectListItem
+|     |   +-Literal
+|     |     +-NumericLiteral[numeric_string=1,float_like=false]
+|     +-from_clause=
+|       +-TableReference[table=a]
 +-with_clause=
   +-SubqueryTable
     +-table_signature=TableSignature[table_alias=a]
     +-SubqueryExpression
-      +-Select
-        +-select_clause=SelectList
-        | +-SelectListItem
-        |   +-Literal
-        |     +-NumericLiteral[numeric_string=1,float_like=false]
-        +-from_clause=
-          +-TableReference[table=test]
+      +-SetOperation[set_operation_type=Select]
+        +-children=
+          +-Select
+            +-select_clause=SelectList
+            | +-SelectListItem
+            |   +-Literal
+            |     +-NumericLiteral[numeric_string=1,float_like=false]
+            +-from_clause=
+              +-TableReference[table=test]
 ==
 
 # AS cannot be omitted.
@@ -774,14 +836,16 @@
 # FIXME(chasseur, qzeng): The result is wrong. Add support for hexadecimal literals.
 SELECT 0xfff FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem[alias=xfff]
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=0,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem[alias=xfff]
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=0,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT x'fff' FROM test
@@ -795,35 +859,37 @@
        1e100000000
 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=123e23,float_like=true]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=123e-123,float_like=true]
-  | +-SelectListItem
-  | | +-Add
-  | |   +-left_operand=Literal
-  | |   | +-NumericLiteral[numeric_string=123e-2,float_like=true]
-  | |   +-right_operand=Literal
-  | |     +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-SelectListItem
-  | | +-Multiply
-  | |   +-left_operand=Literal
-  | |   | +-NumericLiteral[numeric_string=123e-2,float_like=true]
-  | |   +-right_operand=Literal
-  | |     +-NumericLiteral[numeric_string=2,float_like=false]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=123e-123,float_like=true]
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1e100000000,float_like=true]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=123e23,float_like=true]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=123e-123,float_like=true]
+      | +-SelectListItem
+      | | +-Add
+      | |   +-left_operand=Literal
+      | |   | +-NumericLiteral[numeric_string=123e-2,float_like=true]
+      | |   +-right_operand=Literal
+      | |     +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-SelectListItem
+      | | +-Multiply
+      | |   +-left_operand=Literal
+      | |   | +-NumericLiteral[numeric_string=123e-2,float_like=true]
+      | |   +-right_operand=Literal
+      | |     +-NumericLiteral[numeric_string=2,float_like=false]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=123e-123,float_like=true]
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1e100000000,float_like=true]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 9223372036854775805, 9223372036854775807, 9223372036854775809, -9223372036854775805,
@@ -831,77 +897,88 @@
        -9223372036854775800.8, -1.123456789012345678901234567890
 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=9223372036854775805,float_like=false]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=9223372036854775807,float_like=false]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=9223372036854775809,float_like=false]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=-9223372036854775805,float_like=false]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=-9223372036854775807,float_like=false]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=-9223372036854775809,float_like=false]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=9223372036854775800.8,float_like=true]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=1.123456789012345678901234567890,
-  | |     float_like=true]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=-9223372036854775800.8,float_like=true]
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=-1.123456789012345678901234567890,
-  |       float_like=true]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=9223372036854775805,float_like=false]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=9223372036854775807,float_like=false]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=9223372036854775809,float_like=false]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=-9223372036854775805,
+      | |     float_like=false]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=-9223372036854775807,
+      | |     float_like=false]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=-9223372036854775809,
+      | |     float_like=false]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=9223372036854775800.8,
+      | |     float_like=true]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=1.123456789012345678901234567890,
+      | |     float_like=true]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=-9223372036854775800.8,
+      | |     float_like=true]
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=-1.123456789012345678901234567890,
+      |       float_like=true]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 # Escape characters.
 SELECT 1, e'$asdfg\'\'\"\"\t\r\n' FROM test WHERE char_col = e'\'asdfg\''
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-SelectListItem
-  |   +-Literal
-  |     +-StringLiteral[value=$asdfg''""	
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-SelectListItem
+      |   +-Literal
+      |     +-StringLiteral[value=$asdfg''""	
 ]
-  +-where_clause=Equal
-  | +-left_operand=AttributeReference[attribute_name=char_col]
-  | +-right_operand=Literal
-  |   +-StringLiteral[value='asdfg']
-  +-from_clause=
-    +-TableReference[table=test]
+      +-where_clause=Equal
+      | +-left_operand=AttributeReference[attribute_name=char_col]
+      | +-right_operand=Literal
+      |   +-StringLiteral[value='asdfg']
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 # Double-quoted strings are identifiers, which do not need to be escaped.
 SELECT 1 "abc\n" FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem[alias=abc\n]
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem[alias=abc\n]
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1 "abc
@@ -909,17 +986,19 @@
 def
 " FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem[alias=abc
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem[alias=abc
 
 def
 ]
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 # Currently predicate is not treated as a regular scalar expression.
@@ -932,17 +1011,19 @@
 
 SELECT 1 """this IS a double-quoted string""", 2 "this IS NOT a double-quoted string" FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem[alias="this IS a double-quoted string"]
-  | | +-Literal
-  | |   +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-SelectListItem[alias=this IS NOT a double-quoted string]
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=2,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem[alias="this IS a double-quoted string"]
+      | | +-Literal
+      | |   +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-SelectListItem[alias=this IS NOT a double-quoted string]
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=2,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 #
@@ -953,66 +1034,74 @@
        DATE '1998-12-01'
 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1998-12-01]
-  | +-SelectListItem
-  |   +-Literal
-  |     +-StringLiteral[value=1998-12-01,explicit_type=Date]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1998-12-01]
+      | +-SelectListItem
+      |   +-Literal
+      |     +-StringLiteral[value=1998-12-01,explicit_type=Date]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 # Year before 1970.
 SELECT DATE '1960-12-12',
        DATE '1901-12-14' FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1960-12-12,explicit_type=Date]
-  | +-SelectListItem
-  |   +-Literal
-  |     +-StringLiteral[value=1901-12-14,explicit_type=Date]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1960-12-12,explicit_type=Date]
+      | +-SelectListItem
+      |   +-Literal
+      |     +-StringLiteral[value=1901-12-14,explicit_type=Date]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT DATE '1998-2-12', DATE '1998-12-2' FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1998-2-12,explicit_type=Date]
-  | +-SelectListItem
-  |   +-Literal
-  |     +-StringLiteral[value=1998-12-2,explicit_type=Date]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1998-2-12,explicit_type=Date]
+      | +-SelectListItem
+      |   +-Literal
+      |     +-StringLiteral[value=1998-12-2,explicit_type=Date]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT DATE '+1921-12-12',
        DATE '+10001-12-12'
 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=+1921-12-12,explicit_type=Date]
-  | +-SelectListItem
-  |   +-Literal
-  |     +-StringLiteral[value=+10001-12-12,explicit_type=Date]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=+1921-12-12,explicit_type=Date]
+      | +-SelectListItem
+      |   +-Literal
+      |     +-StringLiteral[value=+10001-12-12,explicit_type=Date]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT DATE 'a1998-12-12' FROM test
@@ -1054,20 +1143,22 @@
        DATE '1997-03-31',
        DATE '1998-04-30' FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1996-02-29,explicit_type=Date]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1997-03-31,explicit_type=Date]
-  | +-SelectListItem
-  |   +-Literal
-  |     +-StringLiteral[value=1998-04-30,explicit_type=Date]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1996-02-29,explicit_type=Date]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1997-03-31,explicit_type=Date]
+      | +-SelectListItem
+      |   +-Literal
+      |     +-StringLiteral[value=1998-04-30,explicit_type=Date]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT DATE '1999-02-29' FROM test
@@ -1082,17 +1173,19 @@
        DATETIME '2007-05-08 12:35:29.010'
 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=2007-05-08 12:35:29,explicit_type=Datetime]
-  | +-SelectListItem
-  |   +-Literal
-  |     +-StringLiteral[value=2007-05-08 12:35:29.010,explicit_type=Datetime]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=2007-05-08 12:35:29,explicit_type=Datetime]
+      | +-SelectListItem
+      |   +-Literal
+      |     +-StringLiteral[value=2007-05-08 12:35:29.010,explicit_type=Datetime]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT DATE '1999-04-31' FROM test
@@ -1104,21 +1197,23 @@
 
 SELECT 1 FROM test WHERE attr_date <= DATE '1998-12-01' - INTERVAL '96 day'
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1,float_like=false]
-  +-where_clause=LessOrEqual
-  | +-left_operand=AttributeReference[attribute_name=attr_date]
-  | +-right_operand=Subtract
-  |   +-left_operand=Literal
-  |   | +-StringLiteral[value=1998-12-01,explicit_type=Date]
-  |   +-right_operand=Literal
-  |     +-StringLiteral[value=96 day,explicit_type=DatetimeInterval]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1,float_like=false]
+      +-where_clause=LessOrEqual
+      | +-left_operand=AttributeReference[attribute_name=attr_date]
+      | +-right_operand=Subtract
+      |   +-left_operand=Literal
+      |   | +-StringLiteral[value=1998-12-01,explicit_type=Date]
+      |   +-right_operand=Literal
+      |     +-StringLiteral[value=96 day,explicit_type=DatetimeInterval]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT INTERVAL '1 us', INTERVAL '1 ms', INTERVAL '1 s', INTERVAL '1 minute',
@@ -1133,83 +1228,85 @@
            YEARMONTH INTERVAL '1 century', YEARMONTH INTERVAL '1 millennium'
 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 us,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 ms,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 s,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 minute,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 h,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 day,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 week,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 month,explicit_type=YearMonthInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 year,explicit_type=YearMonthInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 decade,explicit_type=YearMonthInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 century,explicit_type=YearMonthInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 millennium,explicit_type=YearMonthInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 us,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 ms,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 s,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 minute,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 h,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 day,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 week,explicit_type=DatetimeInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 month,explicit_type=YearMonthInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 year,explicit_type=YearMonthInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 decade,explicit_type=YearMonthInterval]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1 century,explicit_type=YearMonthInterval]
-  | +-SelectListItem
-  |   +-Literal
-  |     +-StringLiteral[value=1 millennium,explicit_type=YearMonthInterval]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 us,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 ms,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 s,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 minute,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 h,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 day,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 week,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 month,explicit_type=YearMonthInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 year,explicit_type=YearMonthInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 decade,explicit_type=YearMonthInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 century,explicit_type=YearMonthInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 millennium,explicit_type=YearMonthInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 us,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 ms,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 s,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 minute,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 h,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 day,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 week,explicit_type=DatetimeInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 month,explicit_type=YearMonthInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 year,explicit_type=YearMonthInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 decade,explicit_type=YearMonthInterval]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1 century,explicit_type=YearMonthInterval]
+      | +-SelectListItem
+      |   +-Literal
+      |     +-StringLiteral[value=1 millennium,explicit_type=YearMonthInterval]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT INTERVAL '4 day' (1)
@@ -1229,14 +1326,16 @@
 
 SELECT INTERVAL '-3 year' FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-StringLiteral[value=-3 year,explicit_type=YearMonthInterval]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-StringLiteral[value=-3 year,explicit_type=YearMonthInterval]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT INTERVAL 'a 3 year' FROM test
@@ -1267,22 +1366,36 @@
 
 SELECT 1-1 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Subtract
-  |     +-left_operand=Literal
-  |     | +-NumericLiteral[numeric_string=1,float_like=false]
-  |     +-right_operand=Literal
-  |       +-NumericLiteral[numeric_string=1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Subtract
+      |     +-left_operand=Literal
+      |     | +-NumericLiteral[numeric_string=1,float_like=false]
+      |     +-right_operand=Literal
+      |       +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1 - 1 FROM test
 --
-[same as above]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Subtract
+      |     +-left_operand=Literal
+      |     | +-NumericLiteral[numeric_string=1,float_like=false]
+      |     +-right_operand=Literal
+      |       +-NumericLiteral[numeric_string=1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1--1 FROM test
@@ -1294,50 +1407,56 @@
 
 SELECT 1+-1 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Add
-  |     +-left_operand=Literal
-  |     | +-NumericLiteral[numeric_string=1,float_like=false]
-  |     +-right_operand=Literal
-  |       +-NumericLiteral[numeric_string=-1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Add
+      |     +-left_operand=Literal
+      |     | +-NumericLiteral[numeric_string=1,float_like=false]
+      |     +-right_operand=Literal
+      |       +-NumericLiteral[numeric_string=-1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1-1+-1 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Add
-  |     +-left_operand=Subtract
-  |     | +-left_operand=Literal
-  |     | | +-NumericLiteral[numeric_string=1,float_like=false]
-  |     | +-right_operand=Literal
-  |     |   +-NumericLiteral[numeric_string=1,float_like=false]
-  |     +-right_operand=Literal
-  |       +-NumericLiteral[numeric_string=-1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Add
+      |     +-left_operand=Subtract
+      |     | +-left_operand=Literal
+      |     | | +-NumericLiteral[numeric_string=1,float_like=false]
+      |     | +-right_operand=Literal
+      |     |   +-NumericLiteral[numeric_string=1,float_like=false]
+      |     +-right_operand=Literal
+      |       +-NumericLiteral[numeric_string=-1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1+(-1) FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Add
-  |     +-left_operand=Literal
-  |     | +-NumericLiteral[numeric_string=1,float_like=false]
-  |     +-right_operand=Literal
-  |       +-NumericLiteral[numeric_string=-1,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Add
+      |     +-left_operand=Literal
+      |     | +-NumericLiteral[numeric_string=1,float_like=false]
+      |     +-right_operand=Literal
+      |       +-NumericLiteral[numeric_string=-1,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 # Quit statement
@@ -1349,29 +1468,31 @@
 # Literals with various explicit types.
 SELECT INT '1', LONG '1', FLOAT '1', DOUBLE '1', char(42) 'foo', varchar(42) 'bar' FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1,explicit_type=Int]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1,explicit_type=Long]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1,explicit_type=Float]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=1,explicit_type=Double]
-  | +-SelectListItem
-  | | +-Literal
-  | |   +-StringLiteral[value=foo,explicit_type=Char(42)]
-  | +-SelectListItem
-  |   +-Literal
-  |     +-StringLiteral[value=bar,explicit_type=VarChar(42)]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1,explicit_type=Int]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1,explicit_type=Long]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1,explicit_type=Float]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=1,explicit_type=Double]
+      | +-SelectListItem
+      | | +-Literal
+      | |   +-StringLiteral[value=foo,explicit_type=Char(42)]
+      | +-SelectListItem
+      |   +-Literal
+      |     +-StringLiteral[value=bar,explicit_type=VarChar(42)]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 # Value needs to be quoted when giving an explicit type.
@@ -1394,50 +1515,58 @@
 # acceptable according to the SQL standard.
 SELECT 1. FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1.,float_like=true]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1.,float_like=true]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT .1 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=.1,float_like=true]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=.1,float_like=true]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT 1.e1 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=1.e1,float_like=true]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=1.e1,float_like=true]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT .1e1 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=.1e1,float_like=true]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=.1e1,float_like=true]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 # EXISTS subquery
@@ -1455,57 +1584,64 @@
     WHERE gs1.i = gs3.i
   );
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-AttributeReference[attribute_name=i]
-  +-where_clause=And
-  | +-Exists
-  | | +-subquery=SubqueryExpression
-  | |   +-Select
-  | |     +-select_clause=SelectStar
-  | |     +-where_clause=Equal
-  | |     | +-left_operand=AttributeReference[attribute_name=i,relation_name=gs1]
-  | |     | +-right_operand=AttributeReference[attribute_name=i,
-  | |     |   relation_name=gs2]
-  | |     +-from_clause=
-  | |       +-TableGenerator
-  | |         +-FunctionCall[name=generate_series]
-  | |           +-Literal
-  | |           | +-NumericLiteral[numeric_string=0,float_like=false]
-  | |           +-Literal
-  | |           | +-NumericLiteral[numeric_string=100,float_like=false]
-  | |           +-Literal
-  | |             +-NumericLiteral[numeric_string=5,float_like=false]
-  | +-Not
-  |   +-Exists
-  |     +-subquery=SubqueryExpression
-  |       +-Select
-  |         +-select_clause=SelectStar
-  |         +-where_clause=Equal
-  |         | +-left_operand=AttributeReference[attribute_name=i,
-  |         | | relation_name=gs1]
-  |         | +-right_operand=AttributeReference[attribute_name=i,
-  |         |   relation_name=gs3]
-  |         +-from_clause=
-  |           +-TableGenerator
-  |             +-FunctionCall[name=generate_series]
-  |               +-Literal
-  |               | +-NumericLiteral[numeric_string=0,float_like=false]
-  |               +-Literal
-  |               | +-NumericLiteral[numeric_string=100,float_like=false]
-  |               +-Literal
-  |                 +-NumericLiteral[numeric_string=10,float_like=false]
-  +-from_clause=
-    +-TableGenerator
-      +-FunctionCall[name=generate_series]
-        +-Literal
-        | +-NumericLiteral[numeric_string=0,float_like=false]
-        +-Literal
-        | +-NumericLiteral[numeric_string=100,float_like=false]
-        +-Literal
-          +-NumericLiteral[numeric_string=3,float_like=false]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-AttributeReference[attribute_name=i]
+      +-where_clause=And
+      | +-Exists
+      | | +-subquery=SubqueryExpression
+      | |   +-SetOperation[set_operation_type=Select]
+      | |     +-children=
+      | |       +-Select
+      | |         +-select_clause=SelectStar
+      | |         +-where_clause=Equal
+      | |         | +-left_operand=AttributeReference[attribute_name=i,
+      | |         | | relation_name=gs1]
+      | |         | +-right_operand=AttributeReference[attribute_name=i,
+      | |         |   relation_name=gs2]
+      | |         +-from_clause=
+      | |           +-TableGenerator
+      | |             +-FunctionCall[name=generate_series]
+      | |               +-Literal
+      | |               | +-NumericLiteral[numeric_string=0,float_like=false]
+      | |               +-Literal
+      | |               | +-NumericLiteral[numeric_string=100,float_like=false]
+      | |               +-Literal
+      | |                 +-NumericLiteral[numeric_string=5,float_like=false]
+      | +-Not
+      |   +-Exists
+      |     +-subquery=SubqueryExpression
+      |       +-SetOperation[set_operation_type=Select]
+      |         +-children=
+      |           +-Select
+      |             +-select_clause=SelectStar
+      |             +-where_clause=Equal
+      |             | +-left_operand=AttributeReference[attribute_name=i,
+      |             | | relation_name=gs1]
+      |             | +-right_operand=AttributeReference[attribute_name=i,
+      |             |   relation_name=gs3]
+      |             +-from_clause=
+      |               +-TableGenerator
+      |                 +-FunctionCall[name=generate_series]
+      |                   +-Literal
+      |                   | +-NumericLiteral[numeric_string=0,float_like=false]
+      |                   +-Literal
+      |                   | +-NumericLiteral[numeric_string=100,float_like=false]
+      |                   +-Literal
+      |                     +-NumericLiteral[numeric_string=10,float_like=false]
+      +-from_clause=
+        +-TableGenerator
+          +-FunctionCall[name=generate_series]
+            +-Literal
+            | +-NumericLiteral[numeric_string=0,float_like=false]
+            +-Literal
+            | +-NumericLiteral[numeric_string=100,float_like=false]
+            +-Literal
+              +-NumericLiteral[numeric_string=3,float_like=false]
 ==
 
 # CASE expressions.
@@ -1515,25 +1651,27 @@
        END
 FROM test;
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-SimpleCaseExpression
-  |     +-case_operand=Modulo
-  |     | +-left_operand=AttributeReference[attribute_name=col1]
-  |     | +-right_operand=Literal
-  |     |   +-NumericLiteral[numeric_string=2,float_like=false]
-  |     +-else_result_expression=Literal
-  |     | +-StringLiteral[value=even]
-  |     +-when_clauses=
-  |       +-SimpleWhenClause
-  |         +-condition_operand=Literal
-  |         | +-NumericLiteral[numeric_string=1,float_like=false]
-  |         +-result_expression=Literal
-  |           +-StringLiteral[value=odd]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-SimpleCaseExpression
+      |     +-case_operand=Modulo
+      |     | +-left_operand=AttributeReference[attribute_name=col1]
+      |     | +-right_operand=Literal
+      |     |   +-NumericLiteral[numeric_string=2,float_like=false]
+      |     +-else_result_expression=Literal
+      |     | +-StringLiteral[value=even]
+      |     +-when_clauses=
+      |       +-SimpleWhenClause
+      |         +-condition_operand=Literal
+      |         | +-NumericLiteral[numeric_string=1,float_like=false]
+      |         +-result_expression=Literal
+      |           +-StringLiteral[value=odd]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT *
@@ -1542,22 +1680,24 @@
            ELSE col4
       END > 0;
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-where_clause=Greater
-  | +-left_operand=SearchedCaseExpression
-  | | +-else_result_expression=AttributeReference[attribute_name=col4]
-  | | +-when_clauses=
-  | |   +-SearchedWhenClause
-  | |     +-condition_predicate=Greater
-  | |     | +-left_operand=AttributeReference[attribute_name=col1]
-  | |     | +-right_operand=AttributeReference[attribute_name=col2]
-  | |     +-result_expression=AttributeReference[attribute_name=col3]
-  | +-right_operand=Literal
-  |   +-NumericLiteral[numeric_string=0,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-where_clause=Greater
+      | +-left_operand=SearchedCaseExpression
+      | | +-else_result_expression=AttributeReference[attribute_name=col4]
+      | | +-when_clauses=
+      | |   +-SearchedWhenClause
+      | |     +-condition_predicate=Greater
+      | |     | +-left_operand=AttributeReference[attribute_name=col1]
+      | |     | +-right_operand=AttributeReference[attribute_name=col2]
+      | |     +-result_expression=AttributeReference[attribute_name=col3]
+      | +-right_operand=Literal
+      |   +-NumericLiteral[numeric_string=0,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT
@@ -1575,55 +1715,59 @@
       END + col4)
 FROM test;
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-FunctionCall[name=FUN]
-  |     +-Add
-  |       +-left_operand=SimpleCaseExpression
-  |       | +-case_operand=AttributeReference[attribute_name=col1]
-  |       | +-else_result_expression=Literal
-  |       | | +-NumericLiteral[numeric_string=0,float_like=false]
-  |       | +-when_clauses=
-  |       |   +-SimpleWhenClause
-  |       |   | +-condition_operand=Add
-  |       |   | | +-left_operand=AttributeReference[attribute_name=col2]
-  |       |   | | +-right_operand=FunctionCall[name=FUN]
-  |       |   | |   +-Add
-  |       |   | |     +-left_operand=SearchedCaseExpression
-  |       |   | |     | +-else_result_expression=Literal
-  |       |   | |     | | +-NumericLiteral[numeric_string=1,float_like=false]
-  |       |   | |     | +-when_clauses=
-  |       |   | |     |   +-SearchedWhenClause
-  |       |   | |     |     +-condition_predicate=Less
-  |       |   | |     |     | +-left_operand=AttributeReference[
-  |       |   | |     |     | | attribute_name=col1]
-  |       |   | |     |     | +-right_operand=AttributeReference[
-  |       |   | |     |     |   attribute_name=col2]
-  |       |   | |     |     +-result_expression=Literal
-  |       |   | |     |       +-NumericLiteral[numeric_string=0,float_like=false]
-  |       |   | |     +-right_operand=SearchedCaseExpression
-  |       |   | |       +-else_result_expression=Literal
-  |       |   | |       | +-NumericLiteral[numeric_string=1,float_like=false]
-  |       |   | |       +-when_clauses=
-  |       |   | |         +-SearchedWhenClause
-  |       |   | |           +-condition_predicate=Less
-  |       |   | |           | +-left_operand=AttributeReference[
-  |       |   | |           | | attribute_name=col1]
-  |       |   | |           | +-right_operand=AttributeReference[
-  |       |   | |           |   attribute_name=col3]
-  |       |   | |           +-result_expression=Literal
-  |       |   | |             +-NumericLiteral[numeric_string=0,float_like=false]
-  |       |   | +-result_expression=Literal
-  |       |   |   +-NumericLiteral[numeric_string=1,float_like=false]
-  |       |   +-SimpleWhenClause
-  |       |     +-condition_operand=AttributeReference[attribute_name=col3]
-  |       |     +-result_expression=Literal
-  |       |       +-NumericLiteral[numeric_string=2,float_like=false]
-  |       +-right_operand=AttributeReference[attribute_name=col4]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-FunctionCall[name=FUN]
+      |     +-Add
+      |       +-left_operand=SimpleCaseExpression
+      |       | +-case_operand=AttributeReference[attribute_name=col1]
+      |       | +-else_result_expression=Literal
+      |       | | +-NumericLiteral[numeric_string=0,float_like=false]
+      |       | +-when_clauses=
+      |       |   +-SimpleWhenClause
+      |       |   | +-condition_operand=Add
+      |       |   | | +-left_operand=AttributeReference[attribute_name=col2]
+      |       |   | | +-right_operand=FunctionCall[name=FUN]
+      |       |   | |   +-Add
+      |       |   | |     +-left_operand=SearchedCaseExpression
+      |       |   | |     | +-else_result_expression=Literal
+      |       |   | |     | | +-NumericLiteral[numeric_string=1,float_like=false]
+      |       |   | |     | +-when_clauses=
+      |       |   | |     |   +-SearchedWhenClause
+      |       |   | |     |     +-condition_predicate=Less
+      |       |   | |     |     | +-left_operand=AttributeReference[
+      |       |   | |     |     | | attribute_name=col1]
+      |       |   | |     |     | +-right_operand=AttributeReference[
+      |       |   | |     |     |   attribute_name=col2]
+      |       |   | |     |     +-result_expression=Literal
+      |       |   | |     |       +-NumericLiteral[numeric_string=0,
+      |       |   | |     |         float_like=false]
+      |       |   | |     +-right_operand=SearchedCaseExpression
+      |       |   | |       +-else_result_expression=Literal
+      |       |   | |       | +-NumericLiteral[numeric_string=1,float_like=false]
+      |       |   | |       +-when_clauses=
+      |       |   | |         +-SearchedWhenClause
+      |       |   | |           +-condition_predicate=Less
+      |       |   | |           | +-left_operand=AttributeReference[
+      |       |   | |           | | attribute_name=col1]
+      |       |   | |           | +-right_operand=AttributeReference[
+      |       |   | |           |   attribute_name=col3]
+      |       |   | |           +-result_expression=Literal
+      |       |   | |             +-NumericLiteral[numeric_string=0,
+      |       |   | |               float_like=false]
+      |       |   | +-result_expression=Literal
+      |       |   |   +-NumericLiteral[numeric_string=1,float_like=false]
+      |       |   +-SimpleWhenClause
+      |       |     +-condition_operand=AttributeReference[attribute_name=col3]
+      |       |     +-result_expression=Literal
+      |       |       +-NumericLiteral[numeric_string=2,float_like=false]
+      |       +-right_operand=AttributeReference[attribute_name=col4]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 # IN predicate
@@ -1631,20 +1775,22 @@
 FROM test
 WHERE col1 IN (1, 3, 5);
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-where_clause=InValueList
-  | +-test_expression=AttributeReference[attribute_name=col1]
-  | +-value_list=
-  |   +-Literal
-  |   | +-NumericLiteral[numeric_string=1,float_like=false]
-  |   +-Literal
-  |   | +-NumericLiteral[numeric_string=3,float_like=false]
-  |   +-Literal
-  |     +-NumericLiteral[numeric_string=5,float_like=false]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-where_clause=InValueList
+      | +-test_expression=AttributeReference[attribute_name=col1]
+      | +-value_list=
+      |   +-Literal
+      |   | +-NumericLiteral[numeric_string=1,float_like=false]
+      |   +-Literal
+      |   | +-NumericLiteral[numeric_string=3,float_like=false]
+      |   +-Literal
+      |     +-NumericLiteral[numeric_string=5,float_like=false]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT *
@@ -1653,48 +1799,52 @@
                col2+col3,
                CASE WHEN col4 > 0 THEN col5 ELSE col6 END);
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-where_clause=InValueList
-  | +-test_expression=AttributeReference[attribute_name=col1]
-  | +-value_list=
-  |   +-FunctionCall[name=FUN]
-  |   | +-Literal
-  |   |   +-NumericLiteral[numeric_string=1,float_like=false]
-  |   +-Add
-  |   | +-left_operand=AttributeReference[attribute_name=col2]
-  |   | +-right_operand=AttributeReference[attribute_name=col3]
-  |   +-SearchedCaseExpression
-  |     +-else_result_expression=AttributeReference[attribute_name=col6]
-  |     +-when_clauses=
-  |       +-SearchedWhenClause
-  |         +-condition_predicate=Greater
-  |         | +-left_operand=AttributeReference[attribute_name=col4]
-  |         | +-right_operand=Literal
-  |         |   +-NumericLiteral[numeric_string=0,float_like=false]
-  |         +-result_expression=AttributeReference[attribute_name=col5]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-where_clause=InValueList
+      | +-test_expression=AttributeReference[attribute_name=col1]
+      | +-value_list=
+      |   +-FunctionCall[name=FUN]
+      |   | +-Literal
+      |   |   +-NumericLiteral[numeric_string=1,float_like=false]
+      |   +-Add
+      |   | +-left_operand=AttributeReference[attribute_name=col2]
+      |   | +-right_operand=AttributeReference[attribute_name=col3]
+      |   +-SearchedCaseExpression
+      |     +-else_result_expression=AttributeReference[attribute_name=col6]
+      |     +-when_clauses=
+      |       +-SearchedWhenClause
+      |         +-condition_predicate=Greater
+      |         | +-left_operand=AttributeReference[attribute_name=col4]
+      |         | +-right_operand=Literal
+      |         |   +-NumericLiteral[numeric_string=0,float_like=false]
+      |         +-result_expression=AttributeReference[attribute_name=col5]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT *
 FROM test
 WHERE col1 NOT IN (col1, col2 + col3);
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-where_clause=Not
-  | +-InValueList
-  |   +-test_expression=AttributeReference[attribute_name=col1]
-  |   +-value_list=
-  |     +-AttributeReference[attribute_name=col1]
-  |     +-Add
-  |       +-left_operand=AttributeReference[attribute_name=col2]
-  |       +-right_operand=AttributeReference[attribute_name=col3]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-where_clause=Not
+      | +-InValueList
+      |   +-test_expression=AttributeReference[attribute_name=col1]
+      |   +-value_list=
+      |     +-AttributeReference[attribute_name=col1]
+      |     +-Add
+      |       +-left_operand=AttributeReference[attribute_name=col2]
+      |       +-right_operand=AttributeReference[attribute_name=col3]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT *
@@ -1705,25 +1855,29 @@
   GROUP BY col4
 );
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-where_clause=InTableQuery
-  | +-test_expression=AttributeReference[attribute_name=col1]
-  | +-table_query=SubqueryExpression
-  |   +-Select
-  |     +-select_clause=SelectList
-  |     | +-SelectListItem
-  |     |   +-FunctionCall[name=SUM]
-  |     |     +-Add
-  |     |       +-left_operand=AttributeReference[attribute_name=col2]
-  |     |       +-right_operand=AttributeReference[attribute_name=col3]
-  |     +-group_by=GroupBy
-  |     | +-AttributeReference[attribute_name=col4]
-  |     +-from_clause=
-  |       +-TableReference[table=bar]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-where_clause=InTableQuery
+      | +-test_expression=AttributeReference[attribute_name=col1]
+      | +-table_query=SubqueryExpression
+      |   +-SetOperation[set_operation_type=Select]
+      |     +-children=
+      |       +-Select
+      |         +-select_clause=SelectList
+      |         | +-SelectListItem
+      |         |   +-FunctionCall[name=SUM]
+      |         |     +-Add
+      |         |       +-left_operand=AttributeReference[attribute_name=col2]
+      |         |       +-right_operand=AttributeReference[attribute_name=col3]
+      |         +-group_by=GroupBy
+      |         | +-AttributeReference[attribute_name=col4]
+      |         +-from_clause=
+      |           +-TableReference[table=bar]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT *
@@ -1734,26 +1888,30 @@
   WHERE col3 IN (col4, col5)
 );
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectStar
-  +-where_clause=Not
-  | +-InTableQuery
-  |   +-test_expression=AttributeReference[attribute_name=col1]
-  |   +-table_query=SubqueryExpression
-  |     +-Select
-  |       +-select_clause=SelectList
-  |       | +-SelectListItem
-  |       |   +-AttributeReference[attribute_name=col2]
-  |       +-where_clause=InValueList
-  |       | +-test_expression=AttributeReference[attribute_name=col3]
-  |       | +-value_list=
-  |       |   +-AttributeReference[attribute_name=col4]
-  |       |   +-AttributeReference[attribute_name=col5]
-  |       +-from_clause=
-  |         +-TableReference[table=bar]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectStar
+      +-where_clause=Not
+      | +-InTableQuery
+      |   +-test_expression=AttributeReference[attribute_name=col1]
+      |   +-table_query=SubqueryExpression
+      |     +-SetOperation[set_operation_type=Select]
+      |       +-children=
+      |         +-Select
+      |           +-select_clause=SelectList
+      |           | +-SelectListItem
+      |           |   +-AttributeReference[attribute_name=col2]
+      |           +-where_clause=InValueList
+      |           | +-test_expression=AttributeReference[attribute_name=col3]
+      |           | +-value_list=
+      |           |   +-AttributeReference[attribute_name=col4]
+      |           |   +-AttributeReference[attribute_name=col5]
+      |           +-from_clause=
+      |             +-TableReference[table=bar]
+      +-from_clause=
+        +-TableReference[table=test]
 ==
 
 SELECT avg(attr1) OVER w FROM test
@@ -1762,23 +1920,25 @@
  ORDER BY attr4
  ROWS BETWEEN 3 PRECEDING AND 3 FOLLOWING)
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-FunctionCall[name=avg,window_name=w]
-  |     +-AttributeReference[attribute_name=attr1]
-  +-from_clause=
-  | +-TableReference[table=test]
-  +-window_list=
-    +-window[window_name=w]
-      +-frame_info=FrameInfo[frame_mode=row,num_preceding=3,num_following=3]
-      +-partition_by=
-      | +-AttributeReference[attribute_name=attr2]
-      | +-AttributeReference[attribute_name=attr3]
-      +-order_by=
-        +-OrderByItem[is_asc=true,nulls_first=false]
-          +-AttributeReference[attribute_name=attr4]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-FunctionCall[name=avg,window_name=w]
+      |     +-AttributeReference[attribute_name=attr1]
+      +-from_clause=
+      | +-TableReference[table=test]
+      +-window_list=
+        +-window[window_name=w]
+          +-frame_info=FrameInfo[frame_mode=row,num_preceding=3,num_following=3]
+          +-partition_by=
+          | +-AttributeReference[attribute_name=attr2]
+          | +-AttributeReference[attribute_name=attr3]
+          +-order_by=
+            +-OrderByItem[is_asc=true,nulls_first=false]
+              +-AttributeReference[attribute_name=attr4]
 ==
 
 SELECT avg(attr1) OVER w FROM test
@@ -1787,25 +1947,28 @@
  ORDER BY attr4 DESC NULLS FIRST, attr5 ASC NULLS LAST
  RANGE BETWEEN 3 PRECEDING AND CURRENT ROW)
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-FunctionCall[name=avg,window_name=w]
-  |     +-AttributeReference[attribute_name=attr1]
-  +-from_clause=
-  | +-TableReference[table=test]
-  +-window_list=
-    +-window[window_name=w]
-      +-frame_info=FrameInfo[frame_mode=range,num_preceding=3,num_following=0]
-      +-partition_by=
-      | +-AttributeReference[attribute_name=attr2]
-      | +-AttributeReference[attribute_name=attr3]
-      +-order_by=
-        +-OrderByItem[is_asc=false,nulls_first=true]
-        | +-AttributeReference[attribute_name=attr4]
-        +-OrderByItem[is_asc=true,nulls_first=false]
-          +-AttributeReference[attribute_name=attr5]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-FunctionCall[name=avg,window_name=w]
+      |     +-AttributeReference[attribute_name=attr1]
+      +-from_clause=
+      | +-TableReference[table=test]
+      +-window_list=
+        +-window[window_name=w]
+          +-frame_info=FrameInfo[frame_mode=range,num_preceding=3,
+          | num_following=0]
+          +-partition_by=
+          | +-AttributeReference[attribute_name=attr2]
+          | +-AttributeReference[attribute_name=attr3]
+          +-order_by=
+            +-OrderByItem[is_asc=false,nulls_first=true]
+            | +-AttributeReference[attribute_name=attr4]
+            +-OrderByItem[is_asc=true,nulls_first=false]
+              +-AttributeReference[attribute_name=attr5]
 ==
 
 SELECT avg(attr1) OVER w1 AS avg1, sum(attr5) OVER w2 AS sum5 FROM test
@@ -1818,33 +1981,36 @@
  ORDER BY attr6
  RANGE BETWEEN 2 PRECEDING AND CURRENT ROW)
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem[alias=avg1]
-  | | +-FunctionCall[name=avg,window_name=w1]
-  | |   +-AttributeReference[attribute_name=attr1]
-  | +-SelectListItem[alias=sum5]
-  |   +-FunctionCall[name=sum,window_name=w2]
-  |     +-AttributeReference[attribute_name=attr5]
-  +-from_clause=
-  | +-TableReference[table=test]
-  +-window_list=
-    +-window[window_name=w1]
-    | +-frame_info=FrameInfo[frame_mode=row,num_preceding=3,num_following=3]
-    | +-partition_by=
-    | | +-AttributeReference[attribute_name=attr2]
-    | | +-AttributeReference[attribute_name=attr3]
-    | +-order_by=
-    |   +-OrderByItem[is_asc=true,nulls_first=false]
-    |     +-AttributeReference[attribute_name=attr4]
-    +-window[window_name=w2]
-      +-frame_info=FrameInfo[frame_mode=range,num_preceding=2,num_following=0]
-      +-partition_by=
-      | +-AttributeReference[attribute_name=attr1]
-      +-order_by=
-        +-OrderByItem[is_asc=true,nulls_first=false]
-          +-AttributeReference[attribute_name=attr6]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem[alias=avg1]
+      | | +-FunctionCall[name=avg,window_name=w1]
+      | |   +-AttributeReference[attribute_name=attr1]
+      | +-SelectListItem[alias=sum5]
+      |   +-FunctionCall[name=sum,window_name=w2]
+      |     +-AttributeReference[attribute_name=attr5]
+      +-from_clause=
+      | +-TableReference[table=test]
+      +-window_list=
+        +-window[window_name=w1]
+        | +-frame_info=FrameInfo[frame_mode=row,num_preceding=3,num_following=3]
+        | +-partition_by=
+        | | +-AttributeReference[attribute_name=attr2]
+        | | +-AttributeReference[attribute_name=attr3]
+        | +-order_by=
+        |   +-OrderByItem[is_asc=true,nulls_first=false]
+        |     +-AttributeReference[attribute_name=attr4]
+        +-window[window_name=w2]
+          +-frame_info=FrameInfo[frame_mode=range,num_preceding=2,
+          | num_following=0]
+          +-partition_by=
+          | +-AttributeReference[attribute_name=attr1]
+          +-order_by=
+            +-OrderByItem[is_asc=true,nulls_first=false]
+              +-AttributeReference[attribute_name=attr6]
 ==
 
 SELECT avg(attr1) OVER
@@ -1853,22 +2019,25 @@
  RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW)
 FROM test
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  |   +-FunctionCall[name=avg]
-  |     +-AttributeReference[attribute_name=attr1]
-  |     +-window=window
-  |       +-frame_info=FrameInfo[frame_mode=range,num_preceding=-1,
-  |       | num_following=0]
-  |       +-partition_by=
-  |       | +-AttributeReference[attribute_name=attr2]
-  |       | +-AttributeReference[attribute_name=attr3]
-  |       +-order_by=
-  |         +-OrderByItem[is_asc=false,nulls_first=true]
-  |         | +-AttributeReference[attribute_name=attr4]
-  |         +-OrderByItem[is_asc=true,nulls_first=false]
-  |           +-AttributeReference[attribute_name=attr5]
-  +-from_clause=
-    +-TableReference[table=test]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      |   +-FunctionCall[name=avg]
+      |     +-AttributeReference[attribute_name=attr1]
+      |     +-window=window
+      |       +-frame_info=FrameInfo[frame_mode=range,num_preceding=-1,
+      |       | num_following=0]
+      |       +-partition_by=
+      |       | +-AttributeReference[attribute_name=attr2]
+      |       | +-AttributeReference[attribute_name=attr3]
+      |       +-order_by=
+      |         +-OrderByItem[is_asc=false,nulls_first=true]
+      |         | +-AttributeReference[attribute_name=attr4]
+      |         +-OrderByItem[is_asc=true,nulls_first=false]
+      |           +-AttributeReference[attribute_name=attr5]
+      +-from_clause=
+        +-TableReference[table=test]
+==
diff --git a/parser/tests/SetOperation.test b/parser/tests/SetOperation.test
new file mode 100644
index 0000000..e86cb2f
--- /dev/null
+++ b/parser/tests/SetOperation.test
@@ -0,0 +1,235 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+SELECT * FROM a
+UNION ALL
+SELECT * FROM b;
+--
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=UnionAll]
+  +-children=
+    +-SetOperation[set_operation_type=Select]
+    | +-children=
+    |   +-Select
+    |     +-select_clause=SelectStar
+    |     +-from_clause=
+    |       +-TableReference[table=a]
+    +-SetOperation[set_operation_type=Select]
+      +-children=
+        +-Select
+          +-select_clause=SelectStar
+          +-from_clause=
+            +-TableReference[table=b]
+==
+
+# Currently does not support INTERSECT ALL.
+SELECT * FROM a
+INTERSECT ALL
+SELECT * FROM b;
+--
+ERROR: syntax error (2 : 11)
+INTERSECT ALL
+          ^
+==
+
+SELECT * FROM a
+UNION
+SELECT * FROM b
+UNION
+SELECT * FROM c;
+--
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Union]
+  +-children=
+    +-SetOperation[set_operation_type=Union]
+    | +-children=
+    |   +-SetOperation[set_operation_type=Select]
+    |   | +-children=
+    |   |   +-Select
+    |   |     +-select_clause=SelectStar
+    |   |     +-from_clause=
+    |   |       +-TableReference[table=a]
+    |   +-SetOperation[set_operation_type=Select]
+    |     +-children=
+    |       +-Select
+    |         +-select_clause=SelectStar
+    |         +-from_clause=
+    |           +-TableReference[table=b]
+    +-SetOperation[set_operation_type=Select]
+      +-children=
+        +-Select
+          +-select_clause=SelectStar
+          +-from_clause=
+            +-TableReference[table=c]
+==
+
+SELECT * FROM a
+INTERSECT
+SELECT * FROM b
+UNION
+SELECT * FROM c
+INTERSECT
+SELECT * FROM d;
+--
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Union]
+  +-children=
+    +-SetOperation[set_operation_type=Intersect]
+    | +-children=
+    |   +-SetOperation[set_operation_type=Select]
+    |   | +-children=
+    |   |   +-Select
+    |   |     +-select_clause=SelectStar
+    |   |     +-from_clause=
+    |   |       +-TableReference[table=a]
+    |   +-SetOperation[set_operation_type=Select]
+    |     +-children=
+    |       +-Select
+    |         +-select_clause=SelectStar
+    |         +-from_clause=
+    |           +-TableReference[table=b]
+    +-SetOperation[set_operation_type=Intersect]
+      +-children=
+        +-SetOperation[set_operation_type=Select]
+        | +-children=
+        |   +-Select
+        |     +-select_clause=SelectStar
+        |     +-from_clause=
+        |       +-TableReference[table=c]
+        +-SetOperation[set_operation_type=Select]
+          +-children=
+            +-Select
+              +-select_clause=SelectStar
+              +-from_clause=
+                +-TableReference[table=d]
+==
+
+# Currently does not support using bracket to change order,
+# Instead, use a subquery to change order of set operations.
+SELECT * FROM a
+INTERSECT
+(SELECT * FROM a
+UNION
+SELECT * FROM b);
+--
+ERROR: syntax error (3 : 1)
+(SELECT * FROM a
+^
+==
+
+SELECT * FROM a
+INTERSECT
+SELECT * FROM
+    (SELECT * FROM a
+     UNION
+     SELECT * FROM b
+    ) AS temp;
+--
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Intersect]
+  +-children=
+    +-SetOperation[set_operation_type=Select]
+    | +-children=
+    |   +-Select
+    |     +-select_clause=SelectStar
+    |     +-from_clause=
+    |       +-TableReference[table=a]
+    +-SetOperation[set_operation_type=Select]
+      +-children=
+        +-Select
+          +-select_clause=SelectStar
+          +-from_clause=
+            +-SubqueryTable
+              +-table_signature=TableSignature[table_alias=temp]
+              +-SubqueryExpression
+                +-SetOperation[set_operation_type=Union]
+                  +-children=
+                    +-SetOperation[set_operation_type=Select]
+                    | +-children=
+                    |   +-Select
+                    |     +-select_clause=SelectStar
+                    |     +-from_clause=
+                    |       +-TableReference[table=a]
+                    +-SetOperation[set_operation_type=Select]
+                      +-children=
+                        +-Select
+                          +-select_clause=SelectStar
+                          +-from_clause=
+                            +-TableReference[table=b]
+==
+
+SELECT * FROM
+	(SELECT * FROM a
+	UNION ALL
+	SELECT * FROM b
+	) AS temp1
+INTERSECT
+SELECT * FROM
+	(SELECT * FROM a
+	UNION
+	SELECT * FROM b
+	) AS temp2;
+--
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Intersect]
+  +-children=
+    +-SetOperation[set_operation_type=Select]
+    | +-children=
+    |   +-Select
+    |     +-select_clause=SelectStar
+    |     +-from_clause=
+    |       +-SubqueryTable
+    |         +-table_signature=TableSignature[table_alias=temp1]
+    |         +-SubqueryExpression
+    |           +-SetOperation[set_operation_type=UnionAll]
+    |             +-children=
+    |               +-SetOperation[set_operation_type=Select]
+    |               | +-children=
+    |               |   +-Select
+    |               |     +-select_clause=SelectStar
+    |               |     +-from_clause=
+    |               |       +-TableReference[table=a]
+    |               +-SetOperation[set_operation_type=Select]
+    |                 +-children=
+    |                   +-Select
+    |                     +-select_clause=SelectStar
+    |                     +-from_clause=
+    |                       +-TableReference[table=b]
+    +-SetOperation[set_operation_type=Select]
+      +-children=
+        +-Select
+          +-select_clause=SelectStar
+          +-from_clause=
+            +-SubqueryTable
+              +-table_signature=TableSignature[table_alias=temp2]
+              +-SubqueryExpression
+                +-SetOperation[set_operation_type=Union]
+                  +-children=
+                    +-SetOperation[set_operation_type=Select]
+                    | +-children=
+                    |   +-Select
+                    |     +-select_clause=SelectStar
+                    |     +-from_clause=
+                    |       +-TableReference[table=a]
+                    +-SetOperation[set_operation_type=Select]
+                      +-children=
+                        +-Select
+                          +-select_clause=SelectStar
+                          +-from_clause=
+                            +-TableReference[table=b]
+==
+
diff --git a/parser/tests/TPCH.test b/parser/tests/TPCH.test
index f0ffaa9..9ff8232 100644
--- a/parser/tests/TPCH.test
+++ b/parser/tests/TPCH.test
@@ -38,68 +38,70 @@
   l_returnflag,
   l_linestatus
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=l_returnflag]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=l_linestatus]
-  | +-SelectListItem[alias=sum_qty]
-  | | +-FunctionCall[name=SUM]
-  | |   +-AttributeReference[attribute_name=l_quantity]
-  | +-SelectListItem[alias=sum_base_price]
-  | | +-FunctionCall[name=SUM]
-  | |   +-AttributeReference[attribute_name=l_extendedprice]
-  | +-SelectListItem[alias=sum_disc_price]
-  | | +-FunctionCall[name=SUM]
-  | |   +-Multiply
-  | |     +-left_operand=AttributeReference[attribute_name=l_extendedprice]
-  | |     +-right_operand=Subtract
-  | |       +-left_operand=Literal
-  | |       | +-NumericLiteral[numeric_string=1,float_like=false]
-  | |       +-right_operand=AttributeReference[attribute_name=l_discount]
-  | +-SelectListItem[alias=sum_charge]
-  | | +-FunctionCall[name=SUM]
-  | |   +-Multiply
-  | |     +-left_operand=Multiply
-  | |     | +-left_operand=AttributeReference[attribute_name=l_extendedprice]
-  | |     | +-right_operand=Subtract
-  | |     |   +-left_operand=Literal
-  | |     |   | +-NumericLiteral[numeric_string=1,float_like=false]
-  | |     |   +-right_operand=AttributeReference[attribute_name=l_discount]
-  | |     +-right_operand=Add
-  | |       +-left_operand=Literal
-  | |       | +-NumericLiteral[numeric_string=1,float_like=false]
-  | |       +-right_operand=AttributeReference[attribute_name=l_tax]
-  | +-SelectListItem[alias=avg_qty]
-  | | +-FunctionCall[name=AVG]
-  | |   +-AttributeReference[attribute_name=l_quantity]
-  | +-SelectListItem[alias=avg_price]
-  | | +-FunctionCall[name=AVG]
-  | |   +-AttributeReference[attribute_name=l_extendedprice]
-  | +-SelectListItem[alias=avg_disc]
-  | | +-FunctionCall[name=AVG]
-  | |   +-AttributeReference[attribute_name=l_discount]
-  | +-SelectListItem[alias=count_order]
-  |   +-FunctionCall[name=COUNT,is_star=true]
-  +-where_clause=LessOrEqual
-  | +-left_operand=AttributeReference[attribute_name=l_shipdate]
-  | +-right_operand=Subtract
-  |   +-left_operand=Literal
-  |   | +-StringLiteral[value=1998-12-01,explicit_type=Date]
-  |   +-right_operand=Literal
-  |     +-StringLiteral[value=96 day,explicit_type=DatetimeInterval]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=l_returnflag]
-  | +-AttributeReference[attribute_name=l_linestatus]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  | | +-AttributeReference[attribute_name=l_returnflag]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-AttributeReference[attribute_name=l_linestatus]
-  +-from_clause=
-    +-TableReference[table=lineitem]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=l_returnflag]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=l_linestatus]
+      | +-SelectListItem[alias=sum_qty]
+      | | +-FunctionCall[name=SUM]
+      | |   +-AttributeReference[attribute_name=l_quantity]
+      | +-SelectListItem[alias=sum_base_price]
+      | | +-FunctionCall[name=SUM]
+      | |   +-AttributeReference[attribute_name=l_extendedprice]
+      | +-SelectListItem[alias=sum_disc_price]
+      | | +-FunctionCall[name=SUM]
+      | |   +-Multiply
+      | |     +-left_operand=AttributeReference[attribute_name=l_extendedprice]
+      | |     +-right_operand=Subtract
+      | |       +-left_operand=Literal
+      | |       | +-NumericLiteral[numeric_string=1,float_like=false]
+      | |       +-right_operand=AttributeReference[attribute_name=l_discount]
+      | +-SelectListItem[alias=sum_charge]
+      | | +-FunctionCall[name=SUM]
+      | |   +-Multiply
+      | |     +-left_operand=Multiply
+      | |     | +-left_operand=AttributeReference[attribute_name=l_extendedprice]
+      | |     | +-right_operand=Subtract
+      | |     |   +-left_operand=Literal
+      | |     |   | +-NumericLiteral[numeric_string=1,float_like=false]
+      | |     |   +-right_operand=AttributeReference[attribute_name=l_discount]
+      | |     +-right_operand=Add
+      | |       +-left_operand=Literal
+      | |       | +-NumericLiteral[numeric_string=1,float_like=false]
+      | |       +-right_operand=AttributeReference[attribute_name=l_tax]
+      | +-SelectListItem[alias=avg_qty]
+      | | +-FunctionCall[name=AVG]
+      | |   +-AttributeReference[attribute_name=l_quantity]
+      | +-SelectListItem[alias=avg_price]
+      | | +-FunctionCall[name=AVG]
+      | |   +-AttributeReference[attribute_name=l_extendedprice]
+      | +-SelectListItem[alias=avg_disc]
+      | | +-FunctionCall[name=AVG]
+      | |   +-AttributeReference[attribute_name=l_discount]
+      | +-SelectListItem[alias=count_order]
+      |   +-FunctionCall[name=COUNT,is_star=true]
+      +-where_clause=LessOrEqual
+      | +-left_operand=AttributeReference[attribute_name=l_shipdate]
+      | +-right_operand=Subtract
+      |   +-left_operand=Literal
+      |   | +-StringLiteral[value=1998-12-01,explicit_type=Date]
+      |   +-right_operand=Literal
+      |     +-StringLiteral[value=96 day,explicit_type=DatetimeInterval]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=l_returnflag]
+      | +-AttributeReference[attribute_name=l_linestatus]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      | | +-AttributeReference[attribute_name=l_returnflag]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-AttributeReference[attribute_name=l_linestatus]
+      +-from_clause=
+        +-TableReference[table=lineitem]
 ==
 
 # Query 2
@@ -148,97 +150,107 @@
   p_partkey
 LIMIT 100
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=s_acctbal]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=s_name]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=n_name]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=p_partkey]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=p_mfgr]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=s_address]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=s_phone]
-  | +-SelectListItem
-  |   +-AttributeReference[attribute_name=s_comment]
-  +-where_clause=And
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=p_partkey]
-  | | +-right_operand=AttributeReference[attribute_name=ps_partkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
-  | | +-right_operand=AttributeReference[attribute_name=ps_suppkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=p_size]
-  | | +-right_operand=Literal
-  | |   +-NumericLiteral[numeric_string=48,float_like=false]
-  | +-Like
-  | | +-left_operand=AttributeReference[attribute_name=p_type]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=%NICKEL]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
-  | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=n_regionkey]
-  | | +-right_operand=AttributeReference[attribute_name=r_regionkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=r_name]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=ASIA]
-  | +-Equal
-  |   +-left_operand=AttributeReference[attribute_name=ps_supplycost]
-  |   +-right_operand=SubqueryExpression
-  |     +-Select
-  |       +-select_clause=SelectList
-  |       | +-SelectListItem
-  |       |   +-FunctionCall[name=MIN]
-  |       |     +-AttributeReference[attribute_name=ps_supplycost]
-  |       +-where_clause=And
-  |       | +-Equal
-  |       | | +-left_operand=AttributeReference[attribute_name=p_partkey]
-  |       | | +-right_operand=AttributeReference[attribute_name=ps_partkey]
-  |       | +-Equal
-  |       | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
-  |       | | +-right_operand=AttributeReference[attribute_name=ps_suppkey]
-  |       | +-Equal
-  |       | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
-  |       | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
-  |       | +-Equal
-  |       | | +-left_operand=AttributeReference[attribute_name=n_regionkey]
-  |       | | +-right_operand=AttributeReference[attribute_name=r_regionkey]
-  |       | +-Equal
-  |       |   +-left_operand=AttributeReference[attribute_name=r_name]
-  |       |   +-right_operand=Literal
-  |       |     +-StringLiteral[value=ASIA]
-  |       +-from_clause=
-  |         +-TableReference[table=partsupp]
-  |         +-TableReference[table=supplier]
-  |         +-TableReference[table=nation]
-  |         +-TableReference[table=region]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=false,nulls_first=true]
-  | | +-AttributeReference[attribute_name=s_acctbal]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  | | +-AttributeReference[attribute_name=n_name]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  | | +-AttributeReference[attribute_name=s_name]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-AttributeReference[attribute_name=p_partkey]
-  +-limit=LIMIT
-  | +-NumericLiteral[numeric_string=100,float_like=false]
-  +-from_clause=
-    +-TableReference[table=part]
-    +-TableReference[table=supplier]
-    +-TableReference[table=partsupp]
-    +-TableReference[table=nation]
-    +-TableReference[table=region]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=s_acctbal]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=s_name]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=n_name]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=p_partkey]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=p_mfgr]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=s_address]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=s_phone]
+      | +-SelectListItem
+      |   +-AttributeReference[attribute_name=s_comment]
+      +-where_clause=And
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=p_partkey]
+      | | +-right_operand=AttributeReference[attribute_name=ps_partkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
+      | | +-right_operand=AttributeReference[attribute_name=ps_suppkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=p_size]
+      | | +-right_operand=Literal
+      | |   +-NumericLiteral[numeric_string=48,float_like=false]
+      | +-Like
+      | | +-left_operand=AttributeReference[attribute_name=p_type]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=%NICKEL]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
+      | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=n_regionkey]
+      | | +-right_operand=AttributeReference[attribute_name=r_regionkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=r_name]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=ASIA]
+      | +-Equal
+      |   +-left_operand=AttributeReference[attribute_name=ps_supplycost]
+      |   +-right_operand=SubqueryExpression
+      |     +-SetOperation[set_operation_type=Select]
+      |       +-children=
+      |         +-Select
+      |           +-select_clause=SelectList
+      |           | +-SelectListItem
+      |           |   +-FunctionCall[name=MIN]
+      |           |     +-AttributeReference[attribute_name=ps_supplycost]
+      |           +-where_clause=And
+      |           | +-Equal
+      |           | | +-left_operand=AttributeReference[attribute_name=p_partkey]
+      |           | | +-right_operand=AttributeReference[
+      |           | |   attribute_name=ps_partkey]
+      |           | +-Equal
+      |           | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
+      |           | | +-right_operand=AttributeReference[
+      |           | |   attribute_name=ps_suppkey]
+      |           | +-Equal
+      |           | | +-left_operand=AttributeReference[
+      |           | | | attribute_name=s_nationkey]
+      |           | | +-right_operand=AttributeReference[
+      |           | |   attribute_name=n_nationkey]
+      |           | +-Equal
+      |           | | +-left_operand=AttributeReference[
+      |           | | | attribute_name=n_regionkey]
+      |           | | +-right_operand=AttributeReference[
+      |           | |   attribute_name=r_regionkey]
+      |           | +-Equal
+      |           |   +-left_operand=AttributeReference[attribute_name=r_name]
+      |           |   +-right_operand=Literal
+      |           |     +-StringLiteral[value=ASIA]
+      |           +-from_clause=
+      |             +-TableReference[table=partsupp]
+      |             +-TableReference[table=supplier]
+      |             +-TableReference[table=nation]
+      |             +-TableReference[table=region]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=false,nulls_first=true]
+      | | +-AttributeReference[attribute_name=s_acctbal]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      | | +-AttributeReference[attribute_name=n_name]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      | | +-AttributeReference[attribute_name=s_name]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-AttributeReference[attribute_name=p_partkey]
+      +-limit=LIMIT
+      | +-NumericLiteral[numeric_string=100,float_like=false]
+      +-from_clause=
+        +-TableReference[table=part]
+        +-TableReference[table=supplier]
+        +-TableReference[table=partsupp]
+        +-TableReference[table=nation]
+        +-TableReference[table=region]
 ==
 
 # Query 3
@@ -266,57 +278,59 @@
   o_orderdate
 LIMIT 10
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=l_orderkey]
-  | +-SelectListItem[alias=revenue]
-  | | +-FunctionCall[name=SUM]
-  | |   +-Multiply
-  | |     +-left_operand=AttributeReference[attribute_name=l_extendedprice]
-  | |     +-right_operand=Subtract
-  | |       +-left_operand=Literal
-  | |       | +-NumericLiteral[numeric_string=1,float_like=false]
-  | |       +-right_operand=AttributeReference[attribute_name=l_discount]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=o_orderdate]
-  | +-SelectListItem
-  |   +-AttributeReference[attribute_name=o_shippriority]
-  +-where_clause=And
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=c_mktsegment]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=AUTOMOBILE]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=c_custkey]
-  | | +-right_operand=AttributeReference[attribute_name=o_custkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=l_orderkey]
-  | | +-right_operand=AttributeReference[attribute_name=o_orderkey]
-  | +-Less
-  | | +-left_operand=AttributeReference[attribute_name=o_orderdate]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=1995-03-17,explicit_type=Date]
-  | +-Greater
-  |   +-left_operand=AttributeReference[attribute_name=l_shipdate]
-  |   +-right_operand=Literal
-  |     +-StringLiteral[value=1995-03-17,explicit_type=Date]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=l_orderkey]
-  | +-AttributeReference[attribute_name=o_orderdate]
-  | +-AttributeReference[attribute_name=o_shippriority]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=false,nulls_first=true]
-  | | +-AttributeReference[attribute_name=revenue]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-AttributeReference[attribute_name=o_orderdate]
-  +-limit=LIMIT
-  | +-NumericLiteral[numeric_string=10,float_like=false]
-  +-from_clause=
-    +-TableReference[table=customer]
-    +-TableReference[table=orders]
-    +-TableReference[table=lineitem]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=l_orderkey]
+      | +-SelectListItem[alias=revenue]
+      | | +-FunctionCall[name=SUM]
+      | |   +-Multiply
+      | |     +-left_operand=AttributeReference[attribute_name=l_extendedprice]
+      | |     +-right_operand=Subtract
+      | |       +-left_operand=Literal
+      | |       | +-NumericLiteral[numeric_string=1,float_like=false]
+      | |       +-right_operand=AttributeReference[attribute_name=l_discount]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=o_orderdate]
+      | +-SelectListItem
+      |   +-AttributeReference[attribute_name=o_shippriority]
+      +-where_clause=And
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=c_mktsegment]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=AUTOMOBILE]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=c_custkey]
+      | | +-right_operand=AttributeReference[attribute_name=o_custkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=l_orderkey]
+      | | +-right_operand=AttributeReference[attribute_name=o_orderkey]
+      | +-Less
+      | | +-left_operand=AttributeReference[attribute_name=o_orderdate]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=1995-03-17,explicit_type=Date]
+      | +-Greater
+      |   +-left_operand=AttributeReference[attribute_name=l_shipdate]
+      |   +-right_operand=Literal
+      |     +-StringLiteral[value=1995-03-17,explicit_type=Date]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=l_orderkey]
+      | +-AttributeReference[attribute_name=o_orderdate]
+      | +-AttributeReference[attribute_name=o_shippriority]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=false,nulls_first=true]
+      | | +-AttributeReference[attribute_name=revenue]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-AttributeReference[attribute_name=o_orderdate]
+      +-limit=LIMIT
+      | +-NumericLiteral[numeric_string=10,float_like=false]
+      +-from_clause=
+        +-TableReference[table=customer]
+        +-TableReference[table=orders]
+        +-TableReference[table=lineitem]
 ==
 
 # Query 4
@@ -342,45 +356,53 @@
 ORDER BY
   o_orderpriority
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=o_orderpriority]
-  | +-SelectListItem[alias=order_count]
-  |   +-FunctionCall[name=COUNT,is_star=true]
-  +-where_clause=And
-  | +-GreaterOrEqual
-  | | +-left_operand=AttributeReference[attribute_name=o_orderdate]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=1995-08-01,explicit_type=Date]
-  | +-Less
-  | | +-left_operand=AttributeReference[attribute_name=o_orderdate]
-  | | +-right_operand=Add
-  | |   +-left_operand=Literal
-  | |   | +-StringLiteral[value=1995-08-01,explicit_type=Date]
-  | |   +-right_operand=Literal
-  | |     +-StringLiteral[value=3 month,explicit_type=YearMonthInterval]
-  | +-Exists
-  |   +-subquery=SubqueryExpression
-  |     +-Select
-  |       +-select_clause=SelectStar
-  |       +-where_clause=And
-  |       | +-Equal
-  |       | | +-left_operand=AttributeReference[attribute_name=l_orderkey]
-  |       | | +-right_operand=AttributeReference[attribute_name=o_orderkey]
-  |       | +-Less
-  |       |   +-left_operand=AttributeReference[attribute_name=l_commitdate]
-  |       |   +-right_operand=AttributeReference[attribute_name=l_receiptdate]
-  |       +-from_clause=
-  |         +-TableReference[table=lineitem]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=o_orderpriority]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-AttributeReference[attribute_name=o_orderpriority]
-  +-from_clause=
-    +-TableReference[table=orders]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=o_orderpriority]
+      | +-SelectListItem[alias=order_count]
+      |   +-FunctionCall[name=COUNT,is_star=true]
+      +-where_clause=And
+      | +-GreaterOrEqual
+      | | +-left_operand=AttributeReference[attribute_name=o_orderdate]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=1995-08-01,explicit_type=Date]
+      | +-Less
+      | | +-left_operand=AttributeReference[attribute_name=o_orderdate]
+      | | +-right_operand=Add
+      | |   +-left_operand=Literal
+      | |   | +-StringLiteral[value=1995-08-01,explicit_type=Date]
+      | |   +-right_operand=Literal
+      | |     +-StringLiteral[value=3 month,explicit_type=YearMonthInterval]
+      | +-Exists
+      |   +-subquery=SubqueryExpression
+      |     +-SetOperation[set_operation_type=Select]
+      |       +-children=
+      |         +-Select
+      |           +-select_clause=SelectStar
+      |           +-where_clause=And
+      |           | +-Equal
+      |           | | +-left_operand=AttributeReference[
+      |           | | | attribute_name=l_orderkey]
+      |           | | +-right_operand=AttributeReference[
+      |           | |   attribute_name=o_orderkey]
+      |           | +-Less
+      |           |   +-left_operand=AttributeReference[
+      |           |   | attribute_name=l_commitdate]
+      |           |   +-right_operand=AttributeReference[
+      |           |     attribute_name=l_receiptdate]
+      |           +-from_clause=
+      |             +-TableReference[table=lineitem]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=o_orderpriority]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-AttributeReference[attribute_name=o_orderpriority]
+      +-from_clause=
+        +-TableReference[table=orders]
 ==
 
 # Query 5
@@ -409,65 +431,67 @@
 ORDER BY
   revenue DESC
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=n_name]
-  | +-SelectListItem[alias=revenue]
-  |   +-FunctionCall[name=SUM]
-  |     +-Multiply
-  |       +-left_operand=AttributeReference[attribute_name=l_extendedprice]
-  |       +-right_operand=Subtract
-  |         +-left_operand=Literal
-  |         | +-NumericLiteral[numeric_string=1,float_like=false]
-  |         +-right_operand=AttributeReference[attribute_name=l_discount]
-  +-where_clause=And
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=c_custkey]
-  | | +-right_operand=AttributeReference[attribute_name=o_custkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=l_orderkey]
-  | | +-right_operand=AttributeReference[attribute_name=o_orderkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=l_suppkey]
-  | | +-right_operand=AttributeReference[attribute_name=s_suppkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=c_nationkey]
-  | | +-right_operand=AttributeReference[attribute_name=s_nationkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
-  | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=n_regionkey]
-  | | +-right_operand=AttributeReference[attribute_name=r_regionkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=r_name]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=AMERICA]
-  | +-GreaterOrEqual
-  | | +-left_operand=AttributeReference[attribute_name=o_orderdate]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=1997-01-01,explicit_type=Date]
-  | +-Less
-  |   +-left_operand=AttributeReference[attribute_name=o_orderdate]
-  |   +-right_operand=Add
-  |     +-left_operand=Literal
-  |     | +-StringLiteral[value=1997-01-01,explicit_type=Date]
-  |     +-right_operand=Literal
-  |       +-StringLiteral[value=1 year,explicit_type=YearMonthInterval]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=n_name]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=false,nulls_first=true]
-  |   +-AttributeReference[attribute_name=revenue]
-  +-from_clause=
-    +-TableReference[table=customer]
-    +-TableReference[table=orders]
-    +-TableReference[table=lineitem]
-    +-TableReference[table=supplier]
-    +-TableReference[table=nation]
-    +-TableReference[table=region]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=n_name]
+      | +-SelectListItem[alias=revenue]
+      |   +-FunctionCall[name=SUM]
+      |     +-Multiply
+      |       +-left_operand=AttributeReference[attribute_name=l_extendedprice]
+      |       +-right_operand=Subtract
+      |         +-left_operand=Literal
+      |         | +-NumericLiteral[numeric_string=1,float_like=false]
+      |         +-right_operand=AttributeReference[attribute_name=l_discount]
+      +-where_clause=And
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=c_custkey]
+      | | +-right_operand=AttributeReference[attribute_name=o_custkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=l_orderkey]
+      | | +-right_operand=AttributeReference[attribute_name=o_orderkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=l_suppkey]
+      | | +-right_operand=AttributeReference[attribute_name=s_suppkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=c_nationkey]
+      | | +-right_operand=AttributeReference[attribute_name=s_nationkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
+      | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=n_regionkey]
+      | | +-right_operand=AttributeReference[attribute_name=r_regionkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=r_name]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=AMERICA]
+      | +-GreaterOrEqual
+      | | +-left_operand=AttributeReference[attribute_name=o_orderdate]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=1997-01-01,explicit_type=Date]
+      | +-Less
+      |   +-left_operand=AttributeReference[attribute_name=o_orderdate]
+      |   +-right_operand=Add
+      |     +-left_operand=Literal
+      |     | +-StringLiteral[value=1997-01-01,explicit_type=Date]
+      |     +-right_operand=Literal
+      |       +-StringLiteral[value=1 year,explicit_type=YearMonthInterval]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=n_name]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=false,nulls_first=true]
+      |   +-AttributeReference[attribute_name=revenue]
+      +-from_clause=
+        +-TableReference[table=customer]
+        +-TableReference[table=orders]
+        +-TableReference[table=lineitem]
+        +-TableReference[table=supplier]
+        +-TableReference[table=nation]
+        +-TableReference[table=region]
 ==
 
 # Query 6
@@ -481,44 +505,46 @@
   AND l_discount BETWEEN 0.03 - 0.01 AND 0.03 + 0.01
   AND l_quantity < 25
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem[alias=revenue]
-  |   +-FunctionCall[name=SUM]
-  |     +-Multiply
-  |       +-left_operand=AttributeReference[attribute_name=l_extendedprice]
-  |       +-right_operand=AttributeReference[attribute_name=l_discount]
-  +-where_clause=And
-  | +-GreaterOrEqual
-  | | +-left_operand=AttributeReference[attribute_name=l_shipdate]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=1997-01-01,explicit_type=Date]
-  | +-Less
-  | | +-left_operand=AttributeReference[attribute_name=l_shipdate]
-  | | +-right_operand=Add
-  | |   +-left_operand=Literal
-  | |   | +-StringLiteral[value=1997-01-01,explicit_type=Date]
-  | |   +-right_operand=Literal
-  | |     +-StringLiteral[value=1 year,explicit_type=YearMonthInterval]
-  | +-Between
-  | | +-check_operand=AttributeReference[attribute_name=l_discount]
-  | | +-lower_bound_operand=Subtract
-  | | | +-left_operand=Literal
-  | | | | +-NumericLiteral[numeric_string=0.03,float_like=true]
-  | | | +-right_operand=Literal
-  | | |   +-NumericLiteral[numeric_string=0.01,float_like=true]
-  | | +-upper_bound_operand=Add
-  | |   +-left_operand=Literal
-  | |   | +-NumericLiteral[numeric_string=0.03,float_like=true]
-  | |   +-right_operand=Literal
-  | |     +-NumericLiteral[numeric_string=0.01,float_like=true]
-  | +-Less
-  |   +-left_operand=AttributeReference[attribute_name=l_quantity]
-  |   +-right_operand=Literal
-  |     +-NumericLiteral[numeric_string=25,float_like=false]
-  +-from_clause=
-    +-TableReference[table=lineitem]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem[alias=revenue]
+      |   +-FunctionCall[name=SUM]
+      |     +-Multiply
+      |       +-left_operand=AttributeReference[attribute_name=l_extendedprice]
+      |       +-right_operand=AttributeReference[attribute_name=l_discount]
+      +-where_clause=And
+      | +-GreaterOrEqual
+      | | +-left_operand=AttributeReference[attribute_name=l_shipdate]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=1997-01-01,explicit_type=Date]
+      | +-Less
+      | | +-left_operand=AttributeReference[attribute_name=l_shipdate]
+      | | +-right_operand=Add
+      | |   +-left_operand=Literal
+      | |   | +-StringLiteral[value=1997-01-01,explicit_type=Date]
+      | |   +-right_operand=Literal
+      | |     +-StringLiteral[value=1 year,explicit_type=YearMonthInterval]
+      | +-Between
+      | | +-check_operand=AttributeReference[attribute_name=l_discount]
+      | | +-lower_bound_operand=Subtract
+      | | | +-left_operand=Literal
+      | | | | +-NumericLiteral[numeric_string=0.03,float_like=true]
+      | | | +-right_operand=Literal
+      | | |   +-NumericLiteral[numeric_string=0.01,float_like=true]
+      | | +-upper_bound_operand=Add
+      | |   +-left_operand=Literal
+      | |   | +-NumericLiteral[numeric_string=0.03,float_like=true]
+      | |   +-right_operand=Literal
+      | |     +-NumericLiteral[numeric_string=0.01,float_like=true]
+      | +-Less
+      |   +-left_operand=AttributeReference[attribute_name=l_quantity]
+      |   +-right_operand=Literal
+      |     +-NumericLiteral[numeric_string=25,float_like=false]
+      +-from_clause=
+        +-TableReference[table=lineitem]
 ==
 
 # Query 7
@@ -562,105 +588,121 @@
   cust_nation,
   l_year
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=supp_nation]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=cust_nation]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=l_year]
-  | +-SelectListItem[alias=revenue]
-  |   +-FunctionCall[name=SUM]
-  |     +-AttributeReference[attribute_name=volume]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=supp_nation]
-  | +-AttributeReference[attribute_name=cust_nation]
-  | +-AttributeReference[attribute_name=l_year]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  | | +-AttributeReference[attribute_name=supp_nation]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  | | +-AttributeReference[attribute_name=cust_nation]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-AttributeReference[attribute_name=l_year]
-  +-from_clause=
-    +-SubqueryTable
-      +-table_signature=TableSignature[table_alias=shipping]
-      +-SubqueryExpression
-        +-Select
-          +-select_clause=SelectList
-          | +-SelectListItem[alias=supp_nation]
-          | | +-AttributeReference[attribute_name=n_name,relation_name=n1]
-          | +-SelectListItem[alias=cust_nation]
-          | | +-AttributeReference[attribute_name=n_name,relation_name=n2]
-          | +-SelectListItem[alias=l_year]
-          | | +-Extract[unit=YEAR]
-          | |   +-date_expression=AttributeReference[attribute_name=l_shipdate]
-          | +-SelectListItem[alias=volume]
-          |   +-Multiply
-          |     +-left_operand=AttributeReference[attribute_name=l_extendedprice]
-          |     +-right_operand=Subtract
-          |       +-left_operand=Literal
-          |       | +-NumericLiteral[numeric_string=1,float_like=false]
-          |       +-right_operand=AttributeReference[attribute_name=l_discount]
-          +-where_clause=And
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
-          | | +-right_operand=AttributeReference[attribute_name=l_suppkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=o_orderkey]
-          | | +-right_operand=AttributeReference[attribute_name=l_orderkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=c_custkey]
-          | | +-right_operand=AttributeReference[attribute_name=o_custkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
-          | | +-right_operand=AttributeReference[attribute_name=n_nationkey,
-          | |   relation_name=n1]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=c_nationkey]
-          | | +-right_operand=AttributeReference[attribute_name=n_nationkey,
-          | |   relation_name=n2]
-          | +-Or
-          | | +-And
-          | | | +-Equal
-          | | | | +-left_operand=AttributeReference[attribute_name=n_name,
-          | | | | | relation_name=n1]
-          | | | | +-right_operand=Literal
-          | | | |   +-StringLiteral[value=ETHIOPIA]
-          | | | +-Equal
-          | | |   +-left_operand=AttributeReference[attribute_name=n_name,
-          | | |   | relation_name=n2]
-          | | |   +-right_operand=Literal
-          | | |     +-StringLiteral[value=UNITED STATES]
-          | | +-And
-          | |   +-Equal
-          | |   | +-left_operand=AttributeReference[attribute_name=n_name,
-          | |   | | relation_name=n1]
-          | |   | +-right_operand=Literal
-          | |   |   +-StringLiteral[value=UNITED STATES]
-          | |   +-Equal
-          | |     +-left_operand=AttributeReference[attribute_name=n_name,
-          | |     | relation_name=n2]
-          | |     +-right_operand=Literal
-          | |       +-StringLiteral[value=ETHIOPIA]
-          | +-Between
-          |   +-check_operand=AttributeReference[attribute_name=l_shipdate]
-          |   +-lower_bound_operand=Literal
-          |   | +-StringLiteral[value=1995-01-01,explicit_type=Date]
-          |   +-upper_bound_operand=Literal
-          |     +-StringLiteral[value=1996-12-31,explicit_type=Date]
-          +-from_clause=
-            +-TableReference[table=supplier]
-            +-TableReference[table=lineitem]
-            +-TableReference[table=orders]
-            +-TableReference[table=customer]
-            +-TableReference[table=nation]
-            | +-table_signature=TableSignature[table_alias=n1]
-            +-TableReference[table=nation]
-              +-table_signature=TableSignature[table_alias=n2]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=supp_nation]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=cust_nation]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=l_year]
+      | +-SelectListItem[alias=revenue]
+      |   +-FunctionCall[name=SUM]
+      |     +-AttributeReference[attribute_name=volume]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=supp_nation]
+      | +-AttributeReference[attribute_name=cust_nation]
+      | +-AttributeReference[attribute_name=l_year]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      | | +-AttributeReference[attribute_name=supp_nation]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      | | +-AttributeReference[attribute_name=cust_nation]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-AttributeReference[attribute_name=l_year]
+      +-from_clause=
+        +-SubqueryTable
+          +-table_signature=TableSignature[table_alias=shipping]
+          +-SubqueryExpression
+            +-SetOperation[set_operation_type=Select]
+              +-children=
+                +-Select
+                  +-select_clause=SelectList
+                  | +-SelectListItem[alias=supp_nation]
+                  | | +-AttributeReference[attribute_name=n_name,
+                  | |   relation_name=n1]
+                  | +-SelectListItem[alias=cust_nation]
+                  | | +-AttributeReference[attribute_name=n_name,
+                  | |   relation_name=n2]
+                  | +-SelectListItem[alias=l_year]
+                  | | +-Extract[unit=YEAR]
+                  | |   +-date_expression=AttributeReference[
+                  | |     attribute_name=l_shipdate]
+                  | +-SelectListItem[alias=volume]
+                  |   +-Multiply
+                  |     +-left_operand=AttributeReference[
+                  |     | attribute_name=l_extendedprice]
+                  |     +-right_operand=Subtract
+                  |       +-left_operand=Literal
+                  |       | +-NumericLiteral[numeric_string=1,float_like=false]
+                  |       +-right_operand=AttributeReference[
+                  |         attribute_name=l_discount]
+                  +-where_clause=And
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=l_suppkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[
+                  | | | attribute_name=o_orderkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=l_orderkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[attribute_name=c_custkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=o_custkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[
+                  | | | attribute_name=s_nationkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=n_nationkey,relation_name=n1]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[
+                  | | | attribute_name=c_nationkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=n_nationkey,relation_name=n2]
+                  | +-Or
+                  | | +-And
+                  | | | +-Equal
+                  | | | | +-left_operand=AttributeReference[
+                  | | | | | attribute_name=n_name,relation_name=n1]
+                  | | | | +-right_operand=Literal
+                  | | | |   +-StringLiteral[value=ETHIOPIA]
+                  | | | +-Equal
+                  | | |   +-left_operand=AttributeReference[
+                  | | |   | attribute_name=n_name,relation_name=n2]
+                  | | |   +-right_operand=Literal
+                  | | |     +-StringLiteral[value=UNITED STATES]
+                  | | +-And
+                  | |   +-Equal
+                  | |   | +-left_operand=AttributeReference[
+                  | |   | | attribute_name=n_name,relation_name=n1]
+                  | |   | +-right_operand=Literal
+                  | |   |   +-StringLiteral[value=UNITED STATES]
+                  | |   +-Equal
+                  | |     +-left_operand=AttributeReference[
+                  | |     | attribute_name=n_name,relation_name=n2]
+                  | |     +-right_operand=Literal
+                  | |       +-StringLiteral[value=ETHIOPIA]
+                  | +-Between
+                  |   +-check_operand=AttributeReference[
+                  |   | attribute_name=l_shipdate]
+                  |   +-lower_bound_operand=Literal
+                  |   | +-StringLiteral[value=1995-01-01,explicit_type=Date]
+                  |   +-upper_bound_operand=Literal
+                  |     +-StringLiteral[value=1996-12-31,explicit_type=Date]
+                  +-from_clause=
+                    +-TableReference[table=supplier]
+                    +-TableReference[table=lineitem]
+                    +-TableReference[table=orders]
+                    +-TableReference[table=customer]
+                    +-TableReference[table=nation]
+                    | +-table_signature=TableSignature[table_alias=n1]
+                    +-TableReference[table=nation]
+                      +-table_signature=TableSignature[table_alias=n2]
 ==
 
 # Query 8
@@ -702,99 +744,116 @@
 ORDER BY
   o_year
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=o_year]
-  | +-SelectListItem[alias=mkt_share]
-  |   +-Divide
-  |     +-left_operand=FunctionCall[name=SUM]
-  |     | +-SearchedCaseExpression
-  |     |   +-else_result_expression=Literal
-  |     |   | +-NumericLiteral[numeric_string=0,float_like=false]
-  |     |   +-when_clauses=
-  |     |     +-SearchedWhenClause
-  |     |       +-condition_predicate=Equal
-  |     |       | +-left_operand=AttributeReference[attribute_name=nation]
-  |     |       | +-right_operand=Literal
-  |     |       |   +-StringLiteral[value=UNITED STATES]
-  |     |       +-result_expression=AttributeReference[attribute_name=volume]
-  |     +-right_operand=FunctionCall[name=SUM]
-  |       +-AttributeReference[attribute_name=volume]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=o_year]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-AttributeReference[attribute_name=o_year]
-  +-from_clause=
-    +-SubqueryTable
-      +-table_signature=TableSignature[table_alias=all_nations]
-      +-SubqueryExpression
-        +-Select
-          +-select_clause=SelectList
-          | +-SelectListItem[alias=o_year]
-          | | +-Extract[unit=YEAR]
-          | |   +-date_expression=AttributeReference[attribute_name=o_orderdate]
-          | +-SelectListItem[alias=volume]
-          | | +-Multiply
-          | |   +-left_operand=AttributeReference[attribute_name=l_extendedprice]
-          | |   +-right_operand=Subtract
-          | |     +-left_operand=Literal
-          | |     | +-NumericLiteral[numeric_string=1,float_like=false]
-          | |     +-right_operand=AttributeReference[attribute_name=l_discount]
-          | +-SelectListItem[alias=nation]
-          |   +-AttributeReference[attribute_name=n_name,relation_name=n2]
-          +-where_clause=And
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=p_partkey]
-          | | +-right_operand=AttributeReference[attribute_name=l_partkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
-          | | +-right_operand=AttributeReference[attribute_name=l_suppkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=l_orderkey]
-          | | +-right_operand=AttributeReference[attribute_name=o_orderkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=o_custkey]
-          | | +-right_operand=AttributeReference[attribute_name=c_custkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=c_nationkey]
-          | | +-right_operand=AttributeReference[attribute_name=n_nationkey,
-          | |   relation_name=n1]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=n_regionkey,
-          | | | relation_name=n1]
-          | | +-right_operand=AttributeReference[attribute_name=r_regionkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=r_name]
-          | | +-right_operand=Literal
-          | |   +-StringLiteral[value=AMERICA]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
-          | | +-right_operand=AttributeReference[attribute_name=n_nationkey,
-          | |   relation_name=n2]
-          | +-Between
-          | | +-check_operand=AttributeReference[attribute_name=o_orderdate]
-          | | +-lower_bound_operand=Literal
-          | | | +-StringLiteral[value=1995-01-01,explicit_type=Date]
-          | | +-upper_bound_operand=Literal
-          | |   +-StringLiteral[value=1996-12-31,explicit_type=Date]
-          | +-Equal
-          |   +-left_operand=AttributeReference[attribute_name=p_type]
-          |   +-right_operand=Literal
-          |     +-StringLiteral[value=MEDIUM ANODIZED NICKEL]
-          +-from_clause=
-            +-TableReference[table=part]
-            +-TableReference[table=supplier]
-            +-TableReference[table=lineitem]
-            +-TableReference[table=orders]
-            +-TableReference[table=customer]
-            +-TableReference[table=nation]
-            | +-table_signature=TableSignature[table_alias=n1]
-            +-TableReference[table=nation]
-            | +-table_signature=TableSignature[table_alias=n2]
-            +-TableReference[table=region]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=o_year]
+      | +-SelectListItem[alias=mkt_share]
+      |   +-Divide
+      |     +-left_operand=FunctionCall[name=SUM]
+      |     | +-SearchedCaseExpression
+      |     |   +-else_result_expression=Literal
+      |     |   | +-NumericLiteral[numeric_string=0,float_like=false]
+      |     |   +-when_clauses=
+      |     |     +-SearchedWhenClause
+      |     |       +-condition_predicate=Equal
+      |     |       | +-left_operand=AttributeReference[attribute_name=nation]
+      |     |       | +-right_operand=Literal
+      |     |       |   +-StringLiteral[value=UNITED STATES]
+      |     |       +-result_expression=AttributeReference[attribute_name=volume]
+      |     +-right_operand=FunctionCall[name=SUM]
+      |       +-AttributeReference[attribute_name=volume]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=o_year]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-AttributeReference[attribute_name=o_year]
+      +-from_clause=
+        +-SubqueryTable
+          +-table_signature=TableSignature[table_alias=all_nations]
+          +-SubqueryExpression
+            +-SetOperation[set_operation_type=Select]
+              +-children=
+                +-Select
+                  +-select_clause=SelectList
+                  | +-SelectListItem[alias=o_year]
+                  | | +-Extract[unit=YEAR]
+                  | |   +-date_expression=AttributeReference[
+                  | |     attribute_name=o_orderdate]
+                  | +-SelectListItem[alias=volume]
+                  | | +-Multiply
+                  | |   +-left_operand=AttributeReference[
+                  | |   | attribute_name=l_extendedprice]
+                  | |   +-right_operand=Subtract
+                  | |     +-left_operand=Literal
+                  | |     | +-NumericLiteral[numeric_string=1,float_like=false]
+                  | |     +-right_operand=AttributeReference[
+                  | |       attribute_name=l_discount]
+                  | +-SelectListItem[alias=nation]
+                  |   +-AttributeReference[attribute_name=n_name,
+                  |     relation_name=n2]
+                  +-where_clause=And
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[attribute_name=p_partkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=l_partkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=l_suppkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[
+                  | | | attribute_name=l_orderkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=o_orderkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[attribute_name=o_custkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=c_custkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[
+                  | | | attribute_name=c_nationkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=n_nationkey,relation_name=n1]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[
+                  | | | attribute_name=n_regionkey,relation_name=n1]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=r_regionkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[attribute_name=r_name]
+                  | | +-right_operand=Literal
+                  | |   +-StringLiteral[value=AMERICA]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[
+                  | | | attribute_name=s_nationkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=n_nationkey,relation_name=n2]
+                  | +-Between
+                  | | +-check_operand=AttributeReference[
+                  | | | attribute_name=o_orderdate]
+                  | | +-lower_bound_operand=Literal
+                  | | | +-StringLiteral[value=1995-01-01,explicit_type=Date]
+                  | | +-upper_bound_operand=Literal
+                  | |   +-StringLiteral[value=1996-12-31,explicit_type=Date]
+                  | +-Equal
+                  |   +-left_operand=AttributeReference[attribute_name=p_type]
+                  |   +-right_operand=Literal
+                  |     +-StringLiteral[value=MEDIUM ANODIZED NICKEL]
+                  +-from_clause=
+                    +-TableReference[table=part]
+                    +-TableReference[table=supplier]
+                    +-TableReference[table=lineitem]
+                    +-TableReference[table=orders]
+                    +-TableReference[table=customer]
+                    +-TableReference[table=nation]
+                    | +-table_signature=TableSignature[table_alias=n1]
+                    +-TableReference[table=nation]
+                    | +-table_signature=TableSignature[table_alias=n2]
+                    +-TableReference[table=region]
 ==
 
 # Query 9
@@ -831,77 +890,95 @@
   nation,
   o_year DESC
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=nation]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=o_year]
-  | +-SelectListItem[alias=sum_profit]
-  |   +-FunctionCall[name=SUM]
-  |     +-AttributeReference[attribute_name=amount]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=nation]
-  | +-AttributeReference[attribute_name=o_year]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  | | +-AttributeReference[attribute_name=nation]
-  | +-OrderByItem[is_asc=false,nulls_first=true]
-  |   +-AttributeReference[attribute_name=o_year]
-  +-from_clause=
-    +-SubqueryTable
-      +-table_signature=TableSignature[table_alias=profit]
-      +-SubqueryExpression
-        +-Select
-          +-select_clause=SelectList
-          | +-SelectListItem[alias=nation]
-          | | +-AttributeReference[attribute_name=n_name]
-          | +-SelectListItem[alias=o_year]
-          | | +-Extract[unit=YEAR]
-          | |   +-date_expression=AttributeReference[attribute_name=o_orderdate]
-          | +-SelectListItem[alias=amount]
-          |   +-Subtract
-          |     +-left_operand=Multiply
-          |     | +-left_operand=AttributeReference[
-          |     | | attribute_name=l_extendedprice]
-          |     | +-right_operand=Subtract
-          |     |   +-left_operand=Literal
-          |     |   | +-NumericLiteral[numeric_string=1,float_like=false]
-          |     |   +-right_operand=AttributeReference[attribute_name=l_discount]
-          |     +-right_operand=Multiply
-          |       +-left_operand=AttributeReference[attribute_name=ps_supplycost]
-          |       +-right_operand=AttributeReference[attribute_name=l_quantity]
-          +-where_clause=And
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
-          | | +-right_operand=AttributeReference[attribute_name=l_suppkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=ps_suppkey]
-          | | +-right_operand=AttributeReference[attribute_name=l_suppkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=ps_partkey]
-          | | +-right_operand=AttributeReference[attribute_name=l_partkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=p_partkey]
-          | | +-right_operand=AttributeReference[attribute_name=l_partkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=o_orderkey]
-          | | +-right_operand=AttributeReference[attribute_name=l_orderkey]
-          | +-Equal
-          | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
-          | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
-          | +-Like
-          |   +-left_operand=AttributeReference[attribute_name=p_name]
-          |   +-right_operand=Literal
-          |     +-StringLiteral[value=%ghost%]
-          +-from_clause=
-            +-TableReference[table=part]
-            +-TableReference[table=supplier]
-            +-TableReference[table=lineitem]
-            +-TableReference[table=partsupp]
-            +-TableReference[table=orders]
-            +-TableReference[table=nation]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=nation]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=o_year]
+      | +-SelectListItem[alias=sum_profit]
+      |   +-FunctionCall[name=SUM]
+      |     +-AttributeReference[attribute_name=amount]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=nation]
+      | +-AttributeReference[attribute_name=o_year]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      | | +-AttributeReference[attribute_name=nation]
+      | +-OrderByItem[is_asc=false,nulls_first=true]
+      |   +-AttributeReference[attribute_name=o_year]
+      +-from_clause=
+        +-SubqueryTable
+          +-table_signature=TableSignature[table_alias=profit]
+          +-SubqueryExpression
+            +-SetOperation[set_operation_type=Select]
+              +-children=
+                +-Select
+                  +-select_clause=SelectList
+                  | +-SelectListItem[alias=nation]
+                  | | +-AttributeReference[attribute_name=n_name]
+                  | +-SelectListItem[alias=o_year]
+                  | | +-Extract[unit=YEAR]
+                  | |   +-date_expression=AttributeReference[
+                  | |     attribute_name=o_orderdate]
+                  | +-SelectListItem[alias=amount]
+                  |   +-Subtract
+                  |     +-left_operand=Multiply
+                  |     | +-left_operand=AttributeReference[
+                  |     | | attribute_name=l_extendedprice]
+                  |     | +-right_operand=Subtract
+                  |     |   +-left_operand=Literal
+                  |     |   | +-NumericLiteral[numeric_string=1,float_like=false]
+                  |     |   +-right_operand=AttributeReference[
+                  |     |     attribute_name=l_discount]
+                  |     +-right_operand=Multiply
+                  |       +-left_operand=AttributeReference[
+                  |       | attribute_name=ps_supplycost]
+                  |       +-right_operand=AttributeReference[
+                  |         attribute_name=l_quantity]
+                  +-where_clause=And
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=l_suppkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[
+                  | | | attribute_name=ps_suppkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=l_suppkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[
+                  | | | attribute_name=ps_partkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=l_partkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[attribute_name=p_partkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=l_partkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[
+                  | | | attribute_name=o_orderkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=l_orderkey]
+                  | +-Equal
+                  | | +-left_operand=AttributeReference[
+                  | | | attribute_name=s_nationkey]
+                  | | +-right_operand=AttributeReference[
+                  | |   attribute_name=n_nationkey]
+                  | +-Like
+                  |   +-left_operand=AttributeReference[attribute_name=p_name]
+                  |   +-right_operand=Literal
+                  |     +-StringLiteral[value=%ghost%]
+                  +-from_clause=
+                    +-TableReference[table=part]
+                    +-TableReference[table=supplier]
+                    +-TableReference[table=lineitem]
+                    +-TableReference[table=partsupp]
+                    +-TableReference[table=orders]
+                    +-TableReference[table=nation]
 ==
 
 # Query 10
@@ -938,74 +1015,76 @@
   revenue DESC
 LIMIT 20
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=c_custkey]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=c_name]
-  | +-SelectListItem[alias=revenue]
-  | | +-FunctionCall[name=SUM]
-  | |   +-Multiply
-  | |     +-left_operand=AttributeReference[attribute_name=l_extendedprice]
-  | |     +-right_operand=Subtract
-  | |       +-left_operand=Literal
-  | |       | +-NumericLiteral[numeric_string=1,float_like=false]
-  | |       +-right_operand=AttributeReference[attribute_name=l_discount]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=c_acctbal]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=n_name]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=c_address]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=c_phone]
-  | +-SelectListItem
-  |   +-AttributeReference[attribute_name=c_comment]
-  +-where_clause=And
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=c_custkey]
-  | | +-right_operand=AttributeReference[attribute_name=o_custkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=l_orderkey]
-  | | +-right_operand=AttributeReference[attribute_name=o_orderkey]
-  | +-GreaterOrEqual
-  | | +-left_operand=AttributeReference[attribute_name=o_orderdate]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=1994-03-01,explicit_type=Date]
-  | +-Less
-  | | +-left_operand=AttributeReference[attribute_name=o_orderdate]
-  | | +-right_operand=Add
-  | |   +-left_operand=Literal
-  | |   | +-StringLiteral[value=1994-03-01,explicit_type=Date]
-  | |   +-right_operand=Literal
-  | |     +-StringLiteral[value=3 month,explicit_type=YearMonthInterval]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=l_returnflag]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=R]
-  | +-Equal
-  |   +-left_operand=AttributeReference[attribute_name=c_nationkey]
-  |   +-right_operand=AttributeReference[attribute_name=n_nationkey]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=c_custkey]
-  | +-AttributeReference[attribute_name=c_name]
-  | +-AttributeReference[attribute_name=c_acctbal]
-  | +-AttributeReference[attribute_name=c_phone]
-  | +-AttributeReference[attribute_name=n_name]
-  | +-AttributeReference[attribute_name=c_address]
-  | +-AttributeReference[attribute_name=c_comment]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=false,nulls_first=true]
-  |   +-AttributeReference[attribute_name=revenue]
-  +-limit=LIMIT
-  | +-NumericLiteral[numeric_string=20,float_like=false]
-  +-from_clause=
-    +-TableReference[table=customer]
-    +-TableReference[table=orders]
-    +-TableReference[table=lineitem]
-    +-TableReference[table=nation]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=c_custkey]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=c_name]
+      | +-SelectListItem[alias=revenue]
+      | | +-FunctionCall[name=SUM]
+      | |   +-Multiply
+      | |     +-left_operand=AttributeReference[attribute_name=l_extendedprice]
+      | |     +-right_operand=Subtract
+      | |       +-left_operand=Literal
+      | |       | +-NumericLiteral[numeric_string=1,float_like=false]
+      | |       +-right_operand=AttributeReference[attribute_name=l_discount]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=c_acctbal]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=n_name]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=c_address]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=c_phone]
+      | +-SelectListItem
+      |   +-AttributeReference[attribute_name=c_comment]
+      +-where_clause=And
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=c_custkey]
+      | | +-right_operand=AttributeReference[attribute_name=o_custkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=l_orderkey]
+      | | +-right_operand=AttributeReference[attribute_name=o_orderkey]
+      | +-GreaterOrEqual
+      | | +-left_operand=AttributeReference[attribute_name=o_orderdate]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=1994-03-01,explicit_type=Date]
+      | +-Less
+      | | +-left_operand=AttributeReference[attribute_name=o_orderdate]
+      | | +-right_operand=Add
+      | |   +-left_operand=Literal
+      | |   | +-StringLiteral[value=1994-03-01,explicit_type=Date]
+      | |   +-right_operand=Literal
+      | |     +-StringLiteral[value=3 month,explicit_type=YearMonthInterval]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=l_returnflag]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=R]
+      | +-Equal
+      |   +-left_operand=AttributeReference[attribute_name=c_nationkey]
+      |   +-right_operand=AttributeReference[attribute_name=n_nationkey]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=c_custkey]
+      | +-AttributeReference[attribute_name=c_name]
+      | +-AttributeReference[attribute_name=c_acctbal]
+      | +-AttributeReference[attribute_name=c_phone]
+      | +-AttributeReference[attribute_name=n_name]
+      | +-AttributeReference[attribute_name=c_address]
+      | +-AttributeReference[attribute_name=c_comment]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=false,nulls_first=true]
+      |   +-AttributeReference[attribute_name=revenue]
+      +-limit=LIMIT
+      | +-NumericLiteral[numeric_string=20,float_like=false]
+      +-from_clause=
+        +-TableReference[table=customer]
+        +-TableReference[table=orders]
+        +-TableReference[table=lineitem]
+        +-TableReference[table=nation]
 ==
 
 # Query 11
@@ -1037,70 +1116,79 @@
 ORDER BY
   value DESC
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=ps_partkey]
-  | +-SelectListItem[alias=value]
-  |   +-FunctionCall[name=SUM]
-  |     +-Multiply
-  |       +-left_operand=AttributeReference[attribute_name=ps_supplycost]
-  |       +-right_operand=AttributeReference[attribute_name=ps_availqty]
-  +-where_clause=And
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=ps_suppkey]
-  | | +-right_operand=AttributeReference[attribute_name=s_suppkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
-  | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
-  | +-Equal
-  |   +-left_operand=AttributeReference[attribute_name=n_name]
-  |   +-right_operand=Literal
-  |     +-StringLiteral[value=INDONESIA]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=ps_partkey]
-  +-having=HAVING
-  | +-Greater
-  |   +-left_operand=FunctionCall[name=SUM]
-  |   | +-Multiply
-  |   |   +-left_operand=AttributeReference[attribute_name=ps_supplycost]
-  |   |   +-right_operand=AttributeReference[attribute_name=ps_availqty]
-  |   +-right_operand=SubqueryExpression
-  |     +-Select
-  |       +-select_clause=SelectList
-  |       | +-SelectListItem
-  |       |   +-Multiply
-  |       |     +-left_operand=FunctionCall[name=SUM]
-  |       |     | +-Multiply
-  |       |     |   +-left_operand=AttributeReference[
-  |       |     |   | attribute_name=ps_supplycost]
-  |       |     |   +-right_operand=AttributeReference[
-  |       |     |     attribute_name=ps_availqty]
-  |       |     +-right_operand=Literal
-  |       |       +-NumericLiteral[numeric_string=0.0000010000,float_like=true]
-  |       +-where_clause=And
-  |       | +-Equal
-  |       | | +-left_operand=AttributeReference[attribute_name=ps_suppkey]
-  |       | | +-right_operand=AttributeReference[attribute_name=s_suppkey]
-  |       | +-Equal
-  |       | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
-  |       | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
-  |       | +-Equal
-  |       |   +-left_operand=AttributeReference[attribute_name=n_name]
-  |       |   +-right_operand=Literal
-  |       |     +-StringLiteral[value=INDONESIA]
-  |       +-from_clause=
-  |         +-TableReference[table=partsupp]
-  |         +-TableReference[table=supplier]
-  |         +-TableReference[table=nation]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=false,nulls_first=true]
-  |   +-AttributeReference[attribute_name=value]
-  +-from_clause=
-    +-TableReference[table=partsupp]
-    +-TableReference[table=supplier]
-    +-TableReference[table=nation]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=ps_partkey]
+      | +-SelectListItem[alias=value]
+      |   +-FunctionCall[name=SUM]
+      |     +-Multiply
+      |       +-left_operand=AttributeReference[attribute_name=ps_supplycost]
+      |       +-right_operand=AttributeReference[attribute_name=ps_availqty]
+      +-where_clause=And
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=ps_suppkey]
+      | | +-right_operand=AttributeReference[attribute_name=s_suppkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
+      | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
+      | +-Equal
+      |   +-left_operand=AttributeReference[attribute_name=n_name]
+      |   +-right_operand=Literal
+      |     +-StringLiteral[value=INDONESIA]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=ps_partkey]
+      +-having=HAVING
+      | +-Greater
+      |   +-left_operand=FunctionCall[name=SUM]
+      |   | +-Multiply
+      |   |   +-left_operand=AttributeReference[attribute_name=ps_supplycost]
+      |   |   +-right_operand=AttributeReference[attribute_name=ps_availqty]
+      |   +-right_operand=SubqueryExpression
+      |     +-SetOperation[set_operation_type=Select]
+      |       +-children=
+      |         +-Select
+      |           +-select_clause=SelectList
+      |           | +-SelectListItem
+      |           |   +-Multiply
+      |           |     +-left_operand=FunctionCall[name=SUM]
+      |           |     | +-Multiply
+      |           |     |   +-left_operand=AttributeReference[
+      |           |     |   | attribute_name=ps_supplycost]
+      |           |     |   +-right_operand=AttributeReference[
+      |           |     |     attribute_name=ps_availqty]
+      |           |     +-right_operand=Literal
+      |           |       +-NumericLiteral[numeric_string=0.0000010000,
+      |           |         float_like=true]
+      |           +-where_clause=And
+      |           | +-Equal
+      |           | | +-left_operand=AttributeReference[
+      |           | | | attribute_name=ps_suppkey]
+      |           | | +-right_operand=AttributeReference[
+      |           | |   attribute_name=s_suppkey]
+      |           | +-Equal
+      |           | | +-left_operand=AttributeReference[
+      |           | | | attribute_name=s_nationkey]
+      |           | | +-right_operand=AttributeReference[
+      |           | |   attribute_name=n_nationkey]
+      |           | +-Equal
+      |           |   +-left_operand=AttributeReference[attribute_name=n_name]
+      |           |   +-right_operand=Literal
+      |           |     +-StringLiteral[value=INDONESIA]
+      |           +-from_clause=
+      |             +-TableReference[table=partsupp]
+      |             +-TableReference[table=supplier]
+      |             +-TableReference[table=nation]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=false,nulls_first=true]
+      |   +-AttributeReference[attribute_name=value]
+      +-from_clause=
+        +-TableReference[table=partsupp]
+        +-TableReference[table=supplier]
+        +-TableReference[table=nation]
 ==
 
 # Query 12
@@ -1133,87 +1221,89 @@
 ORDER BY
   l_shipmode
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=l_shipmode]
-  | +-SelectListItem[alias=high_line_count]
-  | | +-FunctionCall[name=SUM]
-  | |   +-SearchedCaseExpression
-  | |     +-else_result_expression=Literal
-  | |     | +-NumericLiteral[numeric_string=0,float_like=false]
-  | |     +-when_clauses=
-  | |       +-SearchedWhenClause
-  | |         +-condition_predicate=Or
-  | |         | +-Equal
-  | |         | | +-left_operand=AttributeReference[
-  | |         | | | attribute_name=o_orderpriority]
-  | |         | | +-right_operand=Literal
-  | |         | |   +-StringLiteral[value=1-URGENT]
-  | |         | +-Equal
-  | |         |   +-left_operand=AttributeReference[
-  | |         |   | attribute_name=o_orderpriority]
-  | |         |   +-right_operand=Literal
-  | |         |     +-StringLiteral[value=2-HIGH]
-  | |         +-result_expression=Literal
-  | |           +-NumericLiteral[numeric_string=1,float_like=false]
-  | +-SelectListItem[alias=low_line_count]
-  |   +-FunctionCall[name=SUM]
-  |     +-SearchedCaseExpression
-  |       +-else_result_expression=Literal
-  |       | +-NumericLiteral[numeric_string=0,float_like=false]
-  |       +-when_clauses=
-  |         +-SearchedWhenClause
-  |           +-condition_predicate=And
-  |           | +-NotEqual
-  |           | | +-left_operand=AttributeReference[
-  |           | | | attribute_name=o_orderpriority]
-  |           | | +-right_operand=Literal
-  |           | |   +-StringLiteral[value=1-URGENT]
-  |           | +-NotEqual
-  |           |   +-left_operand=AttributeReference[
-  |           |   | attribute_name=o_orderpriority]
-  |           |   +-right_operand=Literal
-  |           |     +-StringLiteral[value=2-HIGH]
-  |           +-result_expression=Literal
-  |             +-NumericLiteral[numeric_string=1,float_like=false]
-  +-where_clause=And
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=o_orderkey]
-  | | +-right_operand=AttributeReference[attribute_name=l_orderkey]
-  | +-InValueList
-  | | +-test_expression=AttributeReference[attribute_name=l_shipmode]
-  | | +-value_list=
-  | |   +-Literal
-  | |   | +-StringLiteral[value=REG AIR]
-  | |   +-Literal
-  | |     +-StringLiteral[value=RAIL]
-  | +-Less
-  | | +-left_operand=AttributeReference[attribute_name=l_commitdate]
-  | | +-right_operand=AttributeReference[attribute_name=l_receiptdate]
-  | +-Less
-  | | +-left_operand=AttributeReference[attribute_name=l_shipdate]
-  | | +-right_operand=AttributeReference[attribute_name=l_commitdate]
-  | +-GreaterOrEqual
-  | | +-left_operand=AttributeReference[attribute_name=l_receiptdate]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=1997-01-01,explicit_type=Date]
-  | +-Less
-  |   +-left_operand=AttributeReference[attribute_name=l_receiptdate]
-  |   +-right_operand=Add
-  |     +-left_operand=Literal
-  |     | +-StringLiteral[value=1997-01-01,explicit_type=Date]
-  |     +-right_operand=Literal
-  |       +-StringLiteral[value=1 year,explicit_type=YearMonthInterval]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=l_shipmode]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-AttributeReference[attribute_name=l_shipmode]
-  +-from_clause=
-    +-TableReference[table=orders]
-    +-TableReference[table=lineitem]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=l_shipmode]
+      | +-SelectListItem[alias=high_line_count]
+      | | +-FunctionCall[name=SUM]
+      | |   +-SearchedCaseExpression
+      | |     +-else_result_expression=Literal
+      | |     | +-NumericLiteral[numeric_string=0,float_like=false]
+      | |     +-when_clauses=
+      | |       +-SearchedWhenClause
+      | |         +-condition_predicate=Or
+      | |         | +-Equal
+      | |         | | +-left_operand=AttributeReference[
+      | |         | | | attribute_name=o_orderpriority]
+      | |         | | +-right_operand=Literal
+      | |         | |   +-StringLiteral[value=1-URGENT]
+      | |         | +-Equal
+      | |         |   +-left_operand=AttributeReference[
+      | |         |   | attribute_name=o_orderpriority]
+      | |         |   +-right_operand=Literal
+      | |         |     +-StringLiteral[value=2-HIGH]
+      | |         +-result_expression=Literal
+      | |           +-NumericLiteral[numeric_string=1,float_like=false]
+      | +-SelectListItem[alias=low_line_count]
+      |   +-FunctionCall[name=SUM]
+      |     +-SearchedCaseExpression
+      |       +-else_result_expression=Literal
+      |       | +-NumericLiteral[numeric_string=0,float_like=false]
+      |       +-when_clauses=
+      |         +-SearchedWhenClause
+      |           +-condition_predicate=And
+      |           | +-NotEqual
+      |           | | +-left_operand=AttributeReference[
+      |           | | | attribute_name=o_orderpriority]
+      |           | | +-right_operand=Literal
+      |           | |   +-StringLiteral[value=1-URGENT]
+      |           | +-NotEqual
+      |           |   +-left_operand=AttributeReference[
+      |           |   | attribute_name=o_orderpriority]
+      |           |   +-right_operand=Literal
+      |           |     +-StringLiteral[value=2-HIGH]
+      |           +-result_expression=Literal
+      |             +-NumericLiteral[numeric_string=1,float_like=false]
+      +-where_clause=And
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=o_orderkey]
+      | | +-right_operand=AttributeReference[attribute_name=l_orderkey]
+      | +-InValueList
+      | | +-test_expression=AttributeReference[attribute_name=l_shipmode]
+      | | +-value_list=
+      | |   +-Literal
+      | |   | +-StringLiteral[value=REG AIR]
+      | |   +-Literal
+      | |     +-StringLiteral[value=RAIL]
+      | +-Less
+      | | +-left_operand=AttributeReference[attribute_name=l_commitdate]
+      | | +-right_operand=AttributeReference[attribute_name=l_receiptdate]
+      | +-Less
+      | | +-left_operand=AttributeReference[attribute_name=l_shipdate]
+      | | +-right_operand=AttributeReference[attribute_name=l_commitdate]
+      | +-GreaterOrEqual
+      | | +-left_operand=AttributeReference[attribute_name=l_receiptdate]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=1997-01-01,explicit_type=Date]
+      | +-Less
+      |   +-left_operand=AttributeReference[attribute_name=l_receiptdate]
+      |   +-right_operand=Add
+      |     +-left_operand=Literal
+      |     | +-StringLiteral[value=1997-01-01,explicit_type=Date]
+      |     +-right_operand=Literal
+      |       +-StringLiteral[value=1 year,explicit_type=YearMonthInterval]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=l_shipmode]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-AttributeReference[attribute_name=l_shipmode]
+      +-from_clause=
+        +-TableReference[table=orders]
+        +-TableReference[table=lineitem]
 ==
 
 # Query 13
@@ -1238,46 +1328,53 @@
   custdist desc,
   c_count DESC
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=c_count]
-  | +-SelectListItem[alias=custdist]
-  |   +-FunctionCall[name=COUNT,is_star=true]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=c_count]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=false,nulls_first=true]
-  | | +-AttributeReference[attribute_name=custdist]
-  | +-OrderByItem[is_asc=false,nulls_first=true]
-  |   +-AttributeReference[attribute_name=c_count]
-  +-from_clause=
-    +-SubqueryTable
-      +-table_signature=TableSignature[table_alias=c_orders,
-      | columns=(c_custkey, c_count)]
-      +-SubqueryExpression
-        +-Select
-          +-select_clause=SelectList
-          | +-SelectListItem
-          | | +-AttributeReference[attribute_name=c_custkey]
-          | +-SelectListItem
-          |   +-FunctionCall[name=COUNT]
-          |     +-AttributeReference[attribute_name=o_orderkey]
-          +-group_by=GroupBy
-          | +-AttributeReference[attribute_name=c_custkey]
-          +-from_clause=
-            +-JoinedTable[join_type=LeftOuterJoin]
-              +-left_table=TableReference[table=customer]
-              +-right_table=TableReference[table=orders]
-              +-join_predicate=And
-                +-Equal
-                | +-left_operand=AttributeReference[attribute_name=c_custkey]
-                | +-right_operand=AttributeReference[attribute_name=o_custkey]
-                +-NotLike
-                  +-left_operand=AttributeReference[attribute_name=o_comment]
-                  +-right_operand=Literal
-                    +-StringLiteral[value=%special%requests%]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=c_count]
+      | +-SelectListItem[alias=custdist]
+      |   +-FunctionCall[name=COUNT,is_star=true]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=c_count]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=false,nulls_first=true]
+      | | +-AttributeReference[attribute_name=custdist]
+      | +-OrderByItem[is_asc=false,nulls_first=true]
+      |   +-AttributeReference[attribute_name=c_count]
+      +-from_clause=
+        +-SubqueryTable
+          +-table_signature=TableSignature[table_alias=c_orders,
+          | columns=(c_custkey, c_count)]
+          +-SubqueryExpression
+            +-SetOperation[set_operation_type=Select]
+              +-children=
+                +-Select
+                  +-select_clause=SelectList
+                  | +-SelectListItem
+                  | | +-AttributeReference[attribute_name=c_custkey]
+                  | +-SelectListItem
+                  |   +-FunctionCall[name=COUNT]
+                  |     +-AttributeReference[attribute_name=o_orderkey]
+                  +-group_by=GroupBy
+                  | +-AttributeReference[attribute_name=c_custkey]
+                  +-from_clause=
+                    +-JoinedTable[join_type=LeftOuterJoin]
+                      +-left_table=TableReference[table=customer]
+                      +-right_table=TableReference[table=orders]
+                      +-join_predicate=And
+                        +-Equal
+                        | +-left_operand=AttributeReference[
+                        | | attribute_name=c_custkey]
+                        | +-right_operand=AttributeReference[
+                        |   attribute_name=o_custkey]
+                        +-NotLike
+                          +-left_operand=AttributeReference[
+                          | attribute_name=o_comment]
+                          +-right_operand=Literal
+                            +-StringLiteral[value=%special%requests%]
 ==
 
 # Query 14
@@ -1295,57 +1392,59 @@
   AND l_shipdate >= DATE '1994-11-01'
   AND l_shipdate < DATE '1994-11-01' + INTERVAL '1 month'
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem[alias=promo_revenue]
-  |   +-Divide
-  |     +-left_operand=Multiply
-  |     | +-left_operand=Literal
-  |     | | +-NumericLiteral[numeric_string=100.00,float_like=true]
-  |     | +-right_operand=FunctionCall[name=SUM]
-  |     |   +-SearchedCaseExpression
-  |     |     +-else_result_expression=Literal
-  |     |     | +-NumericLiteral[numeric_string=0,float_like=false]
-  |     |     +-when_clauses=
-  |     |       +-SearchedWhenClause
-  |     |         +-condition_predicate=Like
-  |     |         | +-left_operand=AttributeReference[attribute_name=p_type]
-  |     |         | +-right_operand=Literal
-  |     |         |   +-StringLiteral[value=PROMO%]
-  |     |         +-result_expression=Multiply
-  |     |           +-left_operand=AttributeReference[
-  |     |           | attribute_name=l_extendedprice]
-  |     |           +-right_operand=Subtract
-  |     |             +-left_operand=Literal
-  |     |             | +-NumericLiteral[numeric_string=1,float_like=false]
-  |     |             +-right_operand=AttributeReference[
-  |     |               attribute_name=l_discount]
-  |     +-right_operand=FunctionCall[name=SUM]
-  |       +-Multiply
-  |         +-left_operand=AttributeReference[attribute_name=l_extendedprice]
-  |         +-right_operand=Subtract
-  |           +-left_operand=Literal
-  |           | +-NumericLiteral[numeric_string=1,float_like=false]
-  |           +-right_operand=AttributeReference[attribute_name=l_discount]
-  +-where_clause=And
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=l_partkey]
-  | | +-right_operand=AttributeReference[attribute_name=p_partkey]
-  | +-GreaterOrEqual
-  | | +-left_operand=AttributeReference[attribute_name=l_shipdate]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=1994-11-01,explicit_type=Date]
-  | +-Less
-  |   +-left_operand=AttributeReference[attribute_name=l_shipdate]
-  |   +-right_operand=Add
-  |     +-left_operand=Literal
-  |     | +-StringLiteral[value=1994-11-01,explicit_type=Date]
-  |     +-right_operand=Literal
-  |       +-StringLiteral[value=1 month,explicit_type=YearMonthInterval]
-  +-from_clause=
-    +-TableReference[table=lineitem]
-    +-TableReference[table=part]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem[alias=promo_revenue]
+      |   +-Divide
+      |     +-left_operand=Multiply
+      |     | +-left_operand=Literal
+      |     | | +-NumericLiteral[numeric_string=100.00,float_like=true]
+      |     | +-right_operand=FunctionCall[name=SUM]
+      |     |   +-SearchedCaseExpression
+      |     |     +-else_result_expression=Literal
+      |     |     | +-NumericLiteral[numeric_string=0,float_like=false]
+      |     |     +-when_clauses=
+      |     |       +-SearchedWhenClause
+      |     |         +-condition_predicate=Like
+      |     |         | +-left_operand=AttributeReference[attribute_name=p_type]
+      |     |         | +-right_operand=Literal
+      |     |         |   +-StringLiteral[value=PROMO%]
+      |     |         +-result_expression=Multiply
+      |     |           +-left_operand=AttributeReference[
+      |     |           | attribute_name=l_extendedprice]
+      |     |           +-right_operand=Subtract
+      |     |             +-left_operand=Literal
+      |     |             | +-NumericLiteral[numeric_string=1,float_like=false]
+      |     |             +-right_operand=AttributeReference[
+      |     |               attribute_name=l_discount]
+      |     +-right_operand=FunctionCall[name=SUM]
+      |       +-Multiply
+      |         +-left_operand=AttributeReference[attribute_name=l_extendedprice]
+      |         +-right_operand=Subtract
+      |           +-left_operand=Literal
+      |           | +-NumericLiteral[numeric_string=1,float_like=false]
+      |           +-right_operand=AttributeReference[attribute_name=l_discount]
+      +-where_clause=And
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=l_partkey]
+      | | +-right_operand=AttributeReference[attribute_name=p_partkey]
+      | +-GreaterOrEqual
+      | | +-left_operand=AttributeReference[attribute_name=l_shipdate]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=1994-11-01,explicit_type=Date]
+      | +-Less
+      |   +-left_operand=AttributeReference[attribute_name=l_shipdate]
+      |   +-right_operand=Add
+      |     +-left_operand=Literal
+      |     | +-StringLiteral[value=1994-11-01,explicit_type=Date]
+      |     +-right_operand=Literal
+      |       +-StringLiteral[value=1 month,explicit_type=YearMonthInterval]
+      +-from_clause=
+        +-TableReference[table=lineitem]
+        +-TableReference[table=part]
 ==
 
 # Query 15
@@ -1379,72 +1478,81 @@
 ORDER BY
   s_suppkey
 --
-SelectStatement
-+-select_query=Select
-| +-select_clause=SelectList
-| | +-SelectListItem
-| | | +-AttributeReference[attribute_name=s_suppkey]
-| | +-SelectListItem
-| | | +-AttributeReference[attribute_name=s_name]
-| | +-SelectListItem
-| | | +-AttributeReference[attribute_name=s_address]
-| | +-SelectListItem
-| | | +-AttributeReference[attribute_name=s_phone]
-| | +-SelectListItem
-| |   +-AttributeReference[attribute_name=total_revenue]
-| +-where_clause=And
-| | +-Equal
-| | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
-| | | +-right_operand=AttributeReference[attribute_name=supplier_no]
-| | +-Equal
-| |   +-left_operand=AttributeReference[attribute_name=total_revenue]
-| |   +-right_operand=SubqueryExpression
-| |     +-Select
-| |       +-select_clause=SelectList
-| |       | +-SelectListItem
-| |       |   +-FunctionCall[name=MAX]
-| |       |     +-AttributeReference[attribute_name=total_revenue]
-| |       +-from_clause=
-| |         +-TableReference[table=revenue]
-| +-order_by=OrderBy
-| | +-OrderByItem[is_asc=true,nulls_first=false]
-| |   +-AttributeReference[attribute_name=s_suppkey]
-| +-from_clause=
-|   +-TableReference[table=supplier]
-|   +-TableReference[table=revenue]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+| +-children=
+|   +-Select
+|     +-select_clause=SelectList
+|     | +-SelectListItem
+|     | | +-AttributeReference[attribute_name=s_suppkey]
+|     | +-SelectListItem
+|     | | +-AttributeReference[attribute_name=s_name]
+|     | +-SelectListItem
+|     | | +-AttributeReference[attribute_name=s_address]
+|     | +-SelectListItem
+|     | | +-AttributeReference[attribute_name=s_phone]
+|     | +-SelectListItem
+|     |   +-AttributeReference[attribute_name=total_revenue]
+|     +-where_clause=And
+|     | +-Equal
+|     | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
+|     | | +-right_operand=AttributeReference[attribute_name=supplier_no]
+|     | +-Equal
+|     |   +-left_operand=AttributeReference[attribute_name=total_revenue]
+|     |   +-right_operand=SubqueryExpression
+|     |     +-SetOperation[set_operation_type=Select]
+|     |       +-children=
+|     |         +-Select
+|     |           +-select_clause=SelectList
+|     |           | +-SelectListItem
+|     |           |   +-FunctionCall[name=MAX]
+|     |           |     +-AttributeReference[attribute_name=total_revenue]
+|     |           +-from_clause=
+|     |             +-TableReference[table=revenue]
+|     +-order_by=OrderBy
+|     | +-OrderByItem[is_asc=true,nulls_first=false]
+|     |   +-AttributeReference[attribute_name=s_suppkey]
+|     +-from_clause=
+|       +-TableReference[table=supplier]
+|       +-TableReference[table=revenue]
 +-with_clause=
   +-SubqueryTable
     +-table_signature=TableSignature[table_alias=revenue,
     | columns=(supplier_no, total_revenue)]
     +-SubqueryExpression
-      +-Select
-        +-select_clause=SelectList
-        | +-SelectListItem
-        | | +-AttributeReference[attribute_name=l_suppkey]
-        | +-SelectListItem
-        |   +-FunctionCall[name=sum]
-        |     +-Multiply
-        |       +-left_operand=AttributeReference[attribute_name=l_extendedprice]
-        |       +-right_operand=Subtract
-        |         +-left_operand=Literal
-        |         | +-NumericLiteral[numeric_string=1,float_like=false]
-        |         +-right_operand=AttributeReference[attribute_name=l_discount]
-        +-where_clause=And
-        | +-GreaterOrEqual
-        | | +-left_operand=AttributeReference[attribute_name=l_shipdate]
-        | | +-right_operand=Literal
-        | |   +-StringLiteral[value=1996-11-01,explicit_type=Date]
-        | +-Less
-        |   +-left_operand=AttributeReference[attribute_name=l_shipdate]
-        |   +-right_operand=Add
-        |     +-left_operand=Literal
-        |     | +-StringLiteral[value=1996-11-01,explicit_type=Date]
-        |     +-right_operand=Literal
-        |       +-StringLiteral[value=3 month,explicit_type=YearMonthInterval]
-        +-group_by=GroupBy
-        | +-AttributeReference[attribute_name=l_suppkey]
-        +-from_clause=
-          +-TableReference[table=lineitem]
+      +-SetOperation[set_operation_type=Select]
+        +-children=
+          +-Select
+            +-select_clause=SelectList
+            | +-SelectListItem
+            | | +-AttributeReference[attribute_name=l_suppkey]
+            | +-SelectListItem
+            |   +-FunctionCall[name=sum]
+            |     +-Multiply
+            |       +-left_operand=AttributeReference[
+            |       | attribute_name=l_extendedprice]
+            |       +-right_operand=Subtract
+            |         +-left_operand=Literal
+            |         | +-NumericLiteral[numeric_string=1,float_like=false]
+            |         +-right_operand=AttributeReference[
+            |           attribute_name=l_discount]
+            +-where_clause=And
+            | +-GreaterOrEqual
+            | | +-left_operand=AttributeReference[attribute_name=l_shipdate]
+            | | +-right_operand=Literal
+            | |   +-StringLiteral[value=1996-11-01,explicit_type=Date]
+            | +-Less
+            |   +-left_operand=AttributeReference[attribute_name=l_shipdate]
+            |   +-right_operand=Add
+            |     +-left_operand=Literal
+            |     | +-StringLiteral[value=1996-11-01,explicit_type=Date]
+            |     +-right_operand=Literal
+            |       +-StringLiteral[value=3 month,
+            |         explicit_type=YearMonthInterval]
+            +-group_by=GroupBy
+            | +-AttributeReference[attribute_name=l_suppkey]
+            +-from_clause=
+              +-TableReference[table=lineitem]
 ==
 
 # Query 16
@@ -1479,79 +1587,83 @@
   p_type,
   p_size
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=p_brand]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=p_type]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=p_size]
-  | +-SelectListItem[alias=supplier_cnt]
-  |   +-FunctionCall[name=COUNT,is_distinct=true]
-  |     +-AttributeReference[attribute_name=ps_suppkey]
-  +-where_clause=And
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=p_partkey]
-  | | +-right_operand=AttributeReference[attribute_name=ps_partkey]
-  | +-NotEqual
-  | | +-left_operand=AttributeReference[attribute_name=p_brand]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=Brand#22]
-  | +-NotLike
-  | | +-left_operand=AttributeReference[attribute_name=p_type]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=ECONOMY BURNISHED%]
-  | +-InValueList
-  | | +-test_expression=AttributeReference[attribute_name=p_size]
-  | | +-value_list=
-  | |   +-Literal
-  | |   | +-NumericLiteral[numeric_string=32,float_like=false]
-  | |   +-Literal
-  | |   | +-NumericLiteral[numeric_string=42,float_like=false]
-  | |   +-Literal
-  | |   | +-NumericLiteral[numeric_string=9,float_like=false]
-  | |   +-Literal
-  | |   | +-NumericLiteral[numeric_string=18,float_like=false]
-  | |   +-Literal
-  | |   | +-NumericLiteral[numeric_string=50,float_like=false]
-  | |   +-Literal
-  | |   | +-NumericLiteral[numeric_string=30,float_like=false]
-  | |   +-Literal
-  | |   | +-NumericLiteral[numeric_string=12,float_like=false]
-  | |   +-Literal
-  | |     +-NumericLiteral[numeric_string=21,float_like=false]
-  | +-Not
-  |   +-InTableQuery
-  |     +-test_expression=AttributeReference[attribute_name=ps_suppkey]
-  |     +-table_query=SubqueryExpression
-  |       +-Select
-  |         +-select_clause=SelectList
-  |         | +-SelectListItem
-  |         |   +-AttributeReference[attribute_name=s_suppkey]
-  |         +-where_clause=Like
-  |         | +-left_operand=AttributeReference[attribute_name=s_comment]
-  |         | +-right_operand=Literal
-  |         |   +-StringLiteral[value=%Customer%Complaints%]
-  |         +-from_clause=
-  |           +-TableReference[table=supplier]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=p_brand]
-  | +-AttributeReference[attribute_name=p_type]
-  | +-AttributeReference[attribute_name=p_size]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=false,nulls_first=true]
-  | | +-AttributeReference[attribute_name=supplier_cnt]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  | | +-AttributeReference[attribute_name=p_brand]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  | | +-AttributeReference[attribute_name=p_type]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-AttributeReference[attribute_name=p_size]
-  +-from_clause=
-    +-TableReference[table=partsupp]
-    +-TableReference[table=part]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=p_brand]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=p_type]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=p_size]
+      | +-SelectListItem[alias=supplier_cnt]
+      |   +-FunctionCall[name=COUNT,is_distinct=true]
+      |     +-AttributeReference[attribute_name=ps_suppkey]
+      +-where_clause=And
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=p_partkey]
+      | | +-right_operand=AttributeReference[attribute_name=ps_partkey]
+      | +-NotEqual
+      | | +-left_operand=AttributeReference[attribute_name=p_brand]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=Brand#22]
+      | +-NotLike
+      | | +-left_operand=AttributeReference[attribute_name=p_type]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=ECONOMY BURNISHED%]
+      | +-InValueList
+      | | +-test_expression=AttributeReference[attribute_name=p_size]
+      | | +-value_list=
+      | |   +-Literal
+      | |   | +-NumericLiteral[numeric_string=32,float_like=false]
+      | |   +-Literal
+      | |   | +-NumericLiteral[numeric_string=42,float_like=false]
+      | |   +-Literal
+      | |   | +-NumericLiteral[numeric_string=9,float_like=false]
+      | |   +-Literal
+      | |   | +-NumericLiteral[numeric_string=18,float_like=false]
+      | |   +-Literal
+      | |   | +-NumericLiteral[numeric_string=50,float_like=false]
+      | |   +-Literal
+      | |   | +-NumericLiteral[numeric_string=30,float_like=false]
+      | |   +-Literal
+      | |   | +-NumericLiteral[numeric_string=12,float_like=false]
+      | |   +-Literal
+      | |     +-NumericLiteral[numeric_string=21,float_like=false]
+      | +-Not
+      |   +-InTableQuery
+      |     +-test_expression=AttributeReference[attribute_name=ps_suppkey]
+      |     +-table_query=SubqueryExpression
+      |       +-SetOperation[set_operation_type=Select]
+      |         +-children=
+      |           +-Select
+      |             +-select_clause=SelectList
+      |             | +-SelectListItem
+      |             |   +-AttributeReference[attribute_name=s_suppkey]
+      |             +-where_clause=Like
+      |             | +-left_operand=AttributeReference[attribute_name=s_comment]
+      |             | +-right_operand=Literal
+      |             |   +-StringLiteral[value=%Customer%Complaints%]
+      |             +-from_clause=
+      |               +-TableReference[table=supplier]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=p_brand]
+      | +-AttributeReference[attribute_name=p_type]
+      | +-AttributeReference[attribute_name=p_size]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=false,nulls_first=true]
+      | | +-AttributeReference[attribute_name=supplier_cnt]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      | | +-AttributeReference[attribute_name=p_brand]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      | | +-AttributeReference[attribute_name=p_type]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-AttributeReference[attribute_name=p_size]
+      +-from_clause=
+        +-TableReference[table=partsupp]
+        +-TableReference[table=part]
 ==
 
 # Query 17
@@ -1573,46 +1685,50 @@
       l_partkey = p_partkey
   )
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem[alias=avg_yearly]
-  |   +-Divide
-  |     +-left_operand=FunctionCall[name=SUM]
-  |     | +-AttributeReference[attribute_name=l_extendedprice]
-  |     +-right_operand=Literal
-  |       +-NumericLiteral[numeric_string=7.0,float_like=true]
-  +-where_clause=And
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=p_partkey]
-  | | +-right_operand=AttributeReference[attribute_name=l_partkey]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=p_brand]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=Brand#24]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=p_container]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=JUMBO BOX]
-  | +-Less
-  |   +-left_operand=AttributeReference[attribute_name=l_quantity]
-  |   +-right_operand=SubqueryExpression
-  |     +-Select
-  |       +-select_clause=SelectList
-  |       | +-SelectListItem
-  |       |   +-Multiply
-  |       |     +-left_operand=Literal
-  |       |     | +-NumericLiteral[numeric_string=0.2,float_like=true]
-  |       |     +-right_operand=FunctionCall[name=AVG]
-  |       |       +-AttributeReference[attribute_name=l_quantity]
-  |       +-where_clause=Equal
-  |       | +-left_operand=AttributeReference[attribute_name=l_partkey]
-  |       | +-right_operand=AttributeReference[attribute_name=p_partkey]
-  |       +-from_clause=
-  |         +-TableReference[table=lineitem]
-  +-from_clause=
-    +-TableReference[table=lineitem]
-    +-TableReference[table=part]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem[alias=avg_yearly]
+      |   +-Divide
+      |     +-left_operand=FunctionCall[name=SUM]
+      |     | +-AttributeReference[attribute_name=l_extendedprice]
+      |     +-right_operand=Literal
+      |       +-NumericLiteral[numeric_string=7.0,float_like=true]
+      +-where_clause=And
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=p_partkey]
+      | | +-right_operand=AttributeReference[attribute_name=l_partkey]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=p_brand]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=Brand#24]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=p_container]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=JUMBO BOX]
+      | +-Less
+      |   +-left_operand=AttributeReference[attribute_name=l_quantity]
+      |   +-right_operand=SubqueryExpression
+      |     +-SetOperation[set_operation_type=Select]
+      |       +-children=
+      |         +-Select
+      |           +-select_clause=SelectList
+      |           | +-SelectListItem
+      |           |   +-Multiply
+      |           |     +-left_operand=Literal
+      |           |     | +-NumericLiteral[numeric_string=0.2,float_like=true]
+      |           |     +-right_operand=FunctionCall[name=AVG]
+      |           |       +-AttributeReference[attribute_name=l_quantity]
+      |           +-where_clause=Equal
+      |           | +-left_operand=AttributeReference[attribute_name=l_partkey]
+      |           | +-right_operand=AttributeReference[attribute_name=p_partkey]
+      |           +-from_clause=
+      |             +-TableReference[table=lineitem]
+      +-from_clause=
+        +-TableReference[table=lineitem]
+        +-TableReference[table=part]
 ==
 
 # Query 18
@@ -1650,63 +1766,67 @@
   o_orderdate
 LIMIT 100
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=c_name]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=c_custkey]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=o_orderkey]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=o_orderdate]
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=o_totalprice]
-  | +-SelectListItem
-  |   +-FunctionCall[name=sum]
-  |     +-AttributeReference[attribute_name=l_quantity]
-  +-where_clause=And
-  | +-InTableQuery
-  | | +-test_expression=AttributeReference[attribute_name=o_orderkey]
-  | | +-table_query=SubqueryExpression
-  | |   +-Select
-  | |     +-select_clause=SelectList
-  | |     | +-SelectListItem
-  | |     |   +-AttributeReference[attribute_name=l_orderkey]
-  | |     +-group_by=GroupBy
-  | |     | +-AttributeReference[attribute_name=l_orderkey]
-  | |     +-having=HAVING
-  | |     | +-Greater
-  | |     |   +-left_operand=FunctionCall[name=SUM]
-  | |     |   | +-AttributeReference[attribute_name=l_quantity]
-  | |     |   +-right_operand=Literal
-  | |     |     +-NumericLiteral[numeric_string=314,float_like=false]
-  | |     +-from_clause=
-  | |       +-TableReference[table=lineitem]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=c_custkey]
-  | | +-right_operand=AttributeReference[attribute_name=o_custkey]
-  | +-Equal
-  |   +-left_operand=AttributeReference[attribute_name=o_orderkey]
-  |   +-right_operand=AttributeReference[attribute_name=l_orderkey]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=c_name]
-  | +-AttributeReference[attribute_name=c_custkey]
-  | +-AttributeReference[attribute_name=o_orderkey]
-  | +-AttributeReference[attribute_name=o_orderdate]
-  | +-AttributeReference[attribute_name=o_totalprice]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=false,nulls_first=true]
-  | | +-AttributeReference[attribute_name=o_totalprice]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-AttributeReference[attribute_name=o_orderdate]
-  +-limit=LIMIT
-  | +-NumericLiteral[numeric_string=100,float_like=false]
-  +-from_clause=
-    +-TableReference[table=customer]
-    +-TableReference[table=orders]
-    +-TableReference[table=lineitem]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=c_name]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=c_custkey]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=o_orderkey]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=o_orderdate]
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=o_totalprice]
+      | +-SelectListItem
+      |   +-FunctionCall[name=sum]
+      |     +-AttributeReference[attribute_name=l_quantity]
+      +-where_clause=And
+      | +-InTableQuery
+      | | +-test_expression=AttributeReference[attribute_name=o_orderkey]
+      | | +-table_query=SubqueryExpression
+      | |   +-SetOperation[set_operation_type=Select]
+      | |     +-children=
+      | |       +-Select
+      | |         +-select_clause=SelectList
+      | |         | +-SelectListItem
+      | |         |   +-AttributeReference[attribute_name=l_orderkey]
+      | |         +-group_by=GroupBy
+      | |         | +-AttributeReference[attribute_name=l_orderkey]
+      | |         +-having=HAVING
+      | |         | +-Greater
+      | |         |   +-left_operand=FunctionCall[name=SUM]
+      | |         |   | +-AttributeReference[attribute_name=l_quantity]
+      | |         |   +-right_operand=Literal
+      | |         |     +-NumericLiteral[numeric_string=314,float_like=false]
+      | |         +-from_clause=
+      | |           +-TableReference[table=lineitem]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=c_custkey]
+      | | +-right_operand=AttributeReference[attribute_name=o_custkey]
+      | +-Equal
+      |   +-left_operand=AttributeReference[attribute_name=o_orderkey]
+      |   +-right_operand=AttributeReference[attribute_name=l_orderkey]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=c_name]
+      | +-AttributeReference[attribute_name=c_custkey]
+      | +-AttributeReference[attribute_name=o_orderkey]
+      | +-AttributeReference[attribute_name=o_orderdate]
+      | +-AttributeReference[attribute_name=o_totalprice]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=false,nulls_first=true]
+      | | +-AttributeReference[attribute_name=o_totalprice]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-AttributeReference[attribute_name=o_orderdate]
+      +-limit=LIMIT
+      | +-NumericLiteral[numeric_string=100,float_like=false]
+      +-from_clause=
+        +-TableReference[table=customer]
+        +-TableReference[table=orders]
+        +-TableReference[table=lineitem]
 ==
 
 # Query 19
@@ -1746,162 +1866,164 @@
     AND l_shipinstruct = 'DELIVER IN PERSON'
   )
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem[alias=revenue]
-  |   +-FunctionCall[name=SUM]
-  |     +-Multiply
-  |       +-left_operand=AttributeReference[attribute_name=l_extendedprice]
-  |       +-right_operand=Subtract
-  |         +-left_operand=Literal
-  |         | +-NumericLiteral[numeric_string=1,float_like=false]
-  |         +-right_operand=AttributeReference[attribute_name=l_discount]
-  +-where_clause=Or
-  | +-And
-  | | +-Equal
-  | | | +-left_operand=AttributeReference[attribute_name=p_partkey]
-  | | | +-right_operand=AttributeReference[attribute_name=l_partkey]
-  | | +-Equal
-  | | | +-left_operand=AttributeReference[attribute_name=p_brand]
-  | | | +-right_operand=Literal
-  | | |   +-StringLiteral[value=Brand#45]
-  | | +-InValueList
-  | | | +-test_expression=AttributeReference[attribute_name=p_container]
-  | | | +-value_list=
-  | | |   +-Literal
-  | | |   | +-StringLiteral[value=SM CASE]
-  | | |   +-Literal
-  | | |   | +-StringLiteral[value=SM BOX]
-  | | |   +-Literal
-  | | |   | +-StringLiteral[value=SM PACK]
-  | | |   +-Literal
-  | | |     +-StringLiteral[value=SM PKG]
-  | | +-GreaterOrEqual
-  | | | +-left_operand=AttributeReference[attribute_name=l_quantity]
-  | | | +-right_operand=Literal
-  | | |   +-NumericLiteral[numeric_string=2,float_like=false]
-  | | +-LessOrEqual
-  | | | +-left_operand=AttributeReference[attribute_name=l_quantity]
-  | | | +-right_operand=Add
-  | | |   +-left_operand=Literal
-  | | |   | +-NumericLiteral[numeric_string=2,float_like=false]
-  | | |   +-right_operand=Literal
-  | | |     +-NumericLiteral[numeric_string=10,float_like=false]
-  | | +-Between
-  | | | +-check_operand=AttributeReference[attribute_name=p_size]
-  | | | +-lower_bound_operand=Literal
-  | | | | +-NumericLiteral[numeric_string=1,float_like=false]
-  | | | +-upper_bound_operand=Literal
-  | | |   +-NumericLiteral[numeric_string=5,float_like=false]
-  | | +-InValueList
-  | | | +-test_expression=AttributeReference[attribute_name=l_shipmode]
-  | | | +-value_list=
-  | | |   +-Literal
-  | | |   | +-StringLiteral[value=AIR]
-  | | |   +-Literal
-  | | |     +-StringLiteral[value=AIR REG]
-  | | +-Equal
-  | |   +-left_operand=AttributeReference[attribute_name=l_shipinstruct]
-  | |   +-right_operand=Literal
-  | |     +-StringLiteral[value=DELIVER IN PERSON]
-  | +-And
-  | | +-Equal
-  | | | +-left_operand=AttributeReference[attribute_name=p_partkey]
-  | | | +-right_operand=AttributeReference[attribute_name=l_partkey]
-  | | +-Equal
-  | | | +-left_operand=AttributeReference[attribute_name=p_brand]
-  | | | +-right_operand=Literal
-  | | |   +-StringLiteral[value=Brand#12]
-  | | +-InValueList
-  | | | +-test_expression=AttributeReference[attribute_name=p_container]
-  | | | +-value_list=
-  | | |   +-Literal
-  | | |   | +-StringLiteral[value=MED BAG]
-  | | |   +-Literal
-  | | |   | +-StringLiteral[value=MED BOX]
-  | | |   +-Literal
-  | | |   | +-StringLiteral[value=MED PKG]
-  | | |   +-Literal
-  | | |     +-StringLiteral[value=MED PACK]
-  | | +-GreaterOrEqual
-  | | | +-left_operand=AttributeReference[attribute_name=l_quantity]
-  | | | +-right_operand=Literal
-  | | |   +-NumericLiteral[numeric_string=13,float_like=false]
-  | | +-LessOrEqual
-  | | | +-left_operand=AttributeReference[attribute_name=l_quantity]
-  | | | +-right_operand=Add
-  | | |   +-left_operand=Literal
-  | | |   | +-NumericLiteral[numeric_string=13,float_like=false]
-  | | |   +-right_operand=Literal
-  | | |     +-NumericLiteral[numeric_string=10,float_like=false]
-  | | +-Between
-  | | | +-check_operand=AttributeReference[attribute_name=p_size]
-  | | | +-lower_bound_operand=Literal
-  | | | | +-NumericLiteral[numeric_string=1,float_like=false]
-  | | | +-upper_bound_operand=Literal
-  | | |   +-NumericLiteral[numeric_string=10,float_like=false]
-  | | +-InValueList
-  | | | +-test_expression=AttributeReference[attribute_name=l_shipmode]
-  | | | +-value_list=
-  | | |   +-Literal
-  | | |   | +-StringLiteral[value=AIR]
-  | | |   +-Literal
-  | | |     +-StringLiteral[value=AIR REG]
-  | | +-Equal
-  | |   +-left_operand=AttributeReference[attribute_name=l_shipinstruct]
-  | |   +-right_operand=Literal
-  | |     +-StringLiteral[value=DELIVER IN PERSON]
-  | +-And
-  |   +-Equal
-  |   | +-left_operand=AttributeReference[attribute_name=p_partkey]
-  |   | +-right_operand=AttributeReference[attribute_name=l_partkey]
-  |   +-Equal
-  |   | +-left_operand=AttributeReference[attribute_name=p_brand]
-  |   | +-right_operand=Literal
-  |   |   +-StringLiteral[value=Brand#53]
-  |   +-InValueList
-  |   | +-test_expression=AttributeReference[attribute_name=p_container]
-  |   | +-value_list=
-  |   |   +-Literal
-  |   |   | +-StringLiteral[value=LG CASE]
-  |   |   +-Literal
-  |   |   | +-StringLiteral[value=LG BOX]
-  |   |   +-Literal
-  |   |   | +-StringLiteral[value=LG PACK]
-  |   |   +-Literal
-  |   |     +-StringLiteral[value=LG PKG]
-  |   +-GreaterOrEqual
-  |   | +-left_operand=AttributeReference[attribute_name=l_quantity]
-  |   | +-right_operand=Literal
-  |   |   +-NumericLiteral[numeric_string=24,float_like=false]
-  |   +-LessOrEqual
-  |   | +-left_operand=AttributeReference[attribute_name=l_quantity]
-  |   | +-right_operand=Add
-  |   |   +-left_operand=Literal
-  |   |   | +-NumericLiteral[numeric_string=24,float_like=false]
-  |   |   +-right_operand=Literal
-  |   |     +-NumericLiteral[numeric_string=10,float_like=false]
-  |   +-Between
-  |   | +-check_operand=AttributeReference[attribute_name=p_size]
-  |   | +-lower_bound_operand=Literal
-  |   | | +-NumericLiteral[numeric_string=1,float_like=false]
-  |   | +-upper_bound_operand=Literal
-  |   |   +-NumericLiteral[numeric_string=15,float_like=false]
-  |   +-InValueList
-  |   | +-test_expression=AttributeReference[attribute_name=l_shipmode]
-  |   | +-value_list=
-  |   |   +-Literal
-  |   |   | +-StringLiteral[value=AIR]
-  |   |   +-Literal
-  |   |     +-StringLiteral[value=AIR REG]
-  |   +-Equal
-  |     +-left_operand=AttributeReference[attribute_name=l_shipinstruct]
-  |     +-right_operand=Literal
-  |       +-StringLiteral[value=DELIVER IN PERSON]
-  +-from_clause=
-    +-TableReference[table=lineitem]
-    +-TableReference[table=part]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem[alias=revenue]
+      |   +-FunctionCall[name=SUM]
+      |     +-Multiply
+      |       +-left_operand=AttributeReference[attribute_name=l_extendedprice]
+      |       +-right_operand=Subtract
+      |         +-left_operand=Literal
+      |         | +-NumericLiteral[numeric_string=1,float_like=false]
+      |         +-right_operand=AttributeReference[attribute_name=l_discount]
+      +-where_clause=Or
+      | +-And
+      | | +-Equal
+      | | | +-left_operand=AttributeReference[attribute_name=p_partkey]
+      | | | +-right_operand=AttributeReference[attribute_name=l_partkey]
+      | | +-Equal
+      | | | +-left_operand=AttributeReference[attribute_name=p_brand]
+      | | | +-right_operand=Literal
+      | | |   +-StringLiteral[value=Brand#45]
+      | | +-InValueList
+      | | | +-test_expression=AttributeReference[attribute_name=p_container]
+      | | | +-value_list=
+      | | |   +-Literal
+      | | |   | +-StringLiteral[value=SM CASE]
+      | | |   +-Literal
+      | | |   | +-StringLiteral[value=SM BOX]
+      | | |   +-Literal
+      | | |   | +-StringLiteral[value=SM PACK]
+      | | |   +-Literal
+      | | |     +-StringLiteral[value=SM PKG]
+      | | +-GreaterOrEqual
+      | | | +-left_operand=AttributeReference[attribute_name=l_quantity]
+      | | | +-right_operand=Literal
+      | | |   +-NumericLiteral[numeric_string=2,float_like=false]
+      | | +-LessOrEqual
+      | | | +-left_operand=AttributeReference[attribute_name=l_quantity]
+      | | | +-right_operand=Add
+      | | |   +-left_operand=Literal
+      | | |   | +-NumericLiteral[numeric_string=2,float_like=false]
+      | | |   +-right_operand=Literal
+      | | |     +-NumericLiteral[numeric_string=10,float_like=false]
+      | | +-Between
+      | | | +-check_operand=AttributeReference[attribute_name=p_size]
+      | | | +-lower_bound_operand=Literal
+      | | | | +-NumericLiteral[numeric_string=1,float_like=false]
+      | | | +-upper_bound_operand=Literal
+      | | |   +-NumericLiteral[numeric_string=5,float_like=false]
+      | | +-InValueList
+      | | | +-test_expression=AttributeReference[attribute_name=l_shipmode]
+      | | | +-value_list=
+      | | |   +-Literal
+      | | |   | +-StringLiteral[value=AIR]
+      | | |   +-Literal
+      | | |     +-StringLiteral[value=AIR REG]
+      | | +-Equal
+      | |   +-left_operand=AttributeReference[attribute_name=l_shipinstruct]
+      | |   +-right_operand=Literal
+      | |     +-StringLiteral[value=DELIVER IN PERSON]
+      | +-And
+      | | +-Equal
+      | | | +-left_operand=AttributeReference[attribute_name=p_partkey]
+      | | | +-right_operand=AttributeReference[attribute_name=l_partkey]
+      | | +-Equal
+      | | | +-left_operand=AttributeReference[attribute_name=p_brand]
+      | | | +-right_operand=Literal
+      | | |   +-StringLiteral[value=Brand#12]
+      | | +-InValueList
+      | | | +-test_expression=AttributeReference[attribute_name=p_container]
+      | | | +-value_list=
+      | | |   +-Literal
+      | | |   | +-StringLiteral[value=MED BAG]
+      | | |   +-Literal
+      | | |   | +-StringLiteral[value=MED BOX]
+      | | |   +-Literal
+      | | |   | +-StringLiteral[value=MED PKG]
+      | | |   +-Literal
+      | | |     +-StringLiteral[value=MED PACK]
+      | | +-GreaterOrEqual
+      | | | +-left_operand=AttributeReference[attribute_name=l_quantity]
+      | | | +-right_operand=Literal
+      | | |   +-NumericLiteral[numeric_string=13,float_like=false]
+      | | +-LessOrEqual
+      | | | +-left_operand=AttributeReference[attribute_name=l_quantity]
+      | | | +-right_operand=Add
+      | | |   +-left_operand=Literal
+      | | |   | +-NumericLiteral[numeric_string=13,float_like=false]
+      | | |   +-right_operand=Literal
+      | | |     +-NumericLiteral[numeric_string=10,float_like=false]
+      | | +-Between
+      | | | +-check_operand=AttributeReference[attribute_name=p_size]
+      | | | +-lower_bound_operand=Literal
+      | | | | +-NumericLiteral[numeric_string=1,float_like=false]
+      | | | +-upper_bound_operand=Literal
+      | | |   +-NumericLiteral[numeric_string=10,float_like=false]
+      | | +-InValueList
+      | | | +-test_expression=AttributeReference[attribute_name=l_shipmode]
+      | | | +-value_list=
+      | | |   +-Literal
+      | | |   | +-StringLiteral[value=AIR]
+      | | |   +-Literal
+      | | |     +-StringLiteral[value=AIR REG]
+      | | +-Equal
+      | |   +-left_operand=AttributeReference[attribute_name=l_shipinstruct]
+      | |   +-right_operand=Literal
+      | |     +-StringLiteral[value=DELIVER IN PERSON]
+      | +-And
+      |   +-Equal
+      |   | +-left_operand=AttributeReference[attribute_name=p_partkey]
+      |   | +-right_operand=AttributeReference[attribute_name=l_partkey]
+      |   +-Equal
+      |   | +-left_operand=AttributeReference[attribute_name=p_brand]
+      |   | +-right_operand=Literal
+      |   |   +-StringLiteral[value=Brand#53]
+      |   +-InValueList
+      |   | +-test_expression=AttributeReference[attribute_name=p_container]
+      |   | +-value_list=
+      |   |   +-Literal
+      |   |   | +-StringLiteral[value=LG CASE]
+      |   |   +-Literal
+      |   |   | +-StringLiteral[value=LG BOX]
+      |   |   +-Literal
+      |   |   | +-StringLiteral[value=LG PACK]
+      |   |   +-Literal
+      |   |     +-StringLiteral[value=LG PKG]
+      |   +-GreaterOrEqual
+      |   | +-left_operand=AttributeReference[attribute_name=l_quantity]
+      |   | +-right_operand=Literal
+      |   |   +-NumericLiteral[numeric_string=24,float_like=false]
+      |   +-LessOrEqual
+      |   | +-left_operand=AttributeReference[attribute_name=l_quantity]
+      |   | +-right_operand=Add
+      |   |   +-left_operand=Literal
+      |   |   | +-NumericLiteral[numeric_string=24,float_like=false]
+      |   |   +-right_operand=Literal
+      |   |     +-NumericLiteral[numeric_string=10,float_like=false]
+      |   +-Between
+      |   | +-check_operand=AttributeReference[attribute_name=p_size]
+      |   | +-lower_bound_operand=Literal
+      |   | | +-NumericLiteral[numeric_string=1,float_like=false]
+      |   | +-upper_bound_operand=Literal
+      |   |   +-NumericLiteral[numeric_string=15,float_like=false]
+      |   +-InValueList
+      |   | +-test_expression=AttributeReference[attribute_name=l_shipmode]
+      |   | +-value_list=
+      |   |   +-Literal
+      |   |   | +-StringLiteral[value=AIR]
+      |   |   +-Literal
+      |   |     +-StringLiteral[value=AIR REG]
+      |   +-Equal
+      |     +-left_operand=AttributeReference[attribute_name=l_shipinstruct]
+      |     +-right_operand=Literal
+      |       +-StringLiteral[value=DELIVER IN PERSON]
+      +-from_clause=
+        +-TableReference[table=lineitem]
+        +-TableReference[table=part]
 ==
 
 # Query 20
@@ -1943,86 +2065,103 @@
 ORDER BY
   s_name
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=s_name]
-  | +-SelectListItem
-  |   +-AttributeReference[attribute_name=s_address]
-  +-where_clause=And
-  | +-InTableQuery
-  | | +-test_expression=AttributeReference[attribute_name=s_suppkey]
-  | | +-table_query=SubqueryExpression
-  | |   +-Select
-  | |     +-select_clause=SelectList
-  | |     | +-SelectListItem
-  | |     |   +-AttributeReference[attribute_name=ps_suppkey]
-  | |     +-where_clause=And
-  | |     | +-InTableQuery
-  | |     | | +-test_expression=AttributeReference[attribute_name=ps_partkey]
-  | |     | | +-table_query=SubqueryExpression
-  | |     | |   +-Select
-  | |     | |     +-select_clause=SelectList
-  | |     | |     | +-SelectListItem
-  | |     | |     |   +-AttributeReference[attribute_name=p_partkey]
-  | |     | |     +-where_clause=Like
-  | |     | |     | +-left_operand=AttributeReference[attribute_name=p_name]
-  | |     | |     | +-right_operand=Literal
-  | |     | |     |   +-StringLiteral[value=sandy%]
-  | |     | |     +-from_clause=
-  | |     | |       +-TableReference[table=part]
-  | |     | +-Greater
-  | |     |   +-left_operand=AttributeReference[attribute_name=ps_availqty]
-  | |     |   +-right_operand=SubqueryExpression
-  | |     |     +-Select
-  | |     |       +-select_clause=SelectList
-  | |     |       | +-SelectListItem
-  | |     |       |   +-Multiply
-  | |     |       |     +-left_operand=Literal
-  | |     |       |     | +-NumericLiteral[numeric_string=0.5,float_like=true]
-  | |     |       |     +-right_operand=FunctionCall[name=SUM]
-  | |     |       |       +-AttributeReference[attribute_name=l_quantity]
-  | |     |       +-where_clause=And
-  | |     |       | +-Equal
-  | |     |       | | +-left_operand=AttributeReference[attribute_name=l_partkey]
-  | |     |       | | +-right_operand=AttributeReference[
-  | |     |       | |   attribute_name=ps_partkey]
-  | |     |       | +-Equal
-  | |     |       | | +-left_operand=AttributeReference[attribute_name=l_suppkey]
-  | |     |       | | +-right_operand=AttributeReference[
-  | |     |       | |   attribute_name=ps_suppkey]
-  | |     |       | +-GreaterOrEqual
-  | |     |       | | +-left_operand=AttributeReference[
-  | |     |       | | | attribute_name=l_shipdate]
-  | |     |       | | +-right_operand=Literal
-  | |     |       | |   +-StringLiteral[value=1993-01-01,explicit_type=Date]
-  | |     |       | +-Less
-  | |     |       |   +-left_operand=AttributeReference[
-  | |     |       |   | attribute_name=l_shipdate]
-  | |     |       |   +-right_operand=Add
-  | |     |       |     +-left_operand=Literal
-  | |     |       |     | +-StringLiteral[value=1993-01-01,explicit_type=Date]
-  | |     |       |     +-right_operand=Literal
-  | |     |       |       +-StringLiteral[value=1 year,
-  | |     |       |         explicit_type=YearMonthInterval]
-  | |     |       +-from_clause=
-  | |     |         +-TableReference[table=lineitem]
-  | |     +-from_clause=
-  | |       +-TableReference[table=partsupp]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
-  | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
-  | +-Equal
-  |   +-left_operand=AttributeReference[attribute_name=n_name]
-  |   +-right_operand=Literal
-  |     +-StringLiteral[value=GERMANY]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-AttributeReference[attribute_name=s_name]
-  +-from_clause=
-    +-TableReference[table=supplier]
-    +-TableReference[table=nation]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=s_name]
+      | +-SelectListItem
+      |   +-AttributeReference[attribute_name=s_address]
+      +-where_clause=And
+      | +-InTableQuery
+      | | +-test_expression=AttributeReference[attribute_name=s_suppkey]
+      | | +-table_query=SubqueryExpression
+      | |   +-SetOperation[set_operation_type=Select]
+      | |     +-children=
+      | |       +-Select
+      | |         +-select_clause=SelectList
+      | |         | +-SelectListItem
+      | |         |   +-AttributeReference[attribute_name=ps_suppkey]
+      | |         +-where_clause=And
+      | |         | +-InTableQuery
+      | |         | | +-test_expression=AttributeReference[
+      | |         | | | attribute_name=ps_partkey]
+      | |         | | +-table_query=SubqueryExpression
+      | |         | |   +-SetOperation[set_operation_type=Select]
+      | |         | |     +-children=
+      | |         | |       +-Select
+      | |         | |         +-select_clause=SelectList
+      | |         | |         | +-SelectListItem
+      | |         | |         |   +-AttributeReference[attribute_name=p_partkey]
+      | |         | |         +-where_clause=Like
+      | |         | |         | +-left_operand=AttributeReference[
+      | |         | |         | | attribute_name=p_name]
+      | |         | |         | +-right_operand=Literal
+      | |         | |         |   +-StringLiteral[value=sandy%]
+      | |         | |         +-from_clause=
+      | |         | |           +-TableReference[table=part]
+      | |         | +-Greater
+      | |         |   +-left_operand=AttributeReference[
+      | |         |   | attribute_name=ps_availqty]
+      | |         |   +-right_operand=SubqueryExpression
+      | |         |     +-SetOperation[set_operation_type=Select]
+      | |         |       +-children=
+      | |         |         +-Select
+      | |         |           +-select_clause=SelectList
+      | |         |           | +-SelectListItem
+      | |         |           |   +-Multiply
+      | |         |           |     +-left_operand=Literal
+      | |         |           |     | +-NumericLiteral[numeric_string=0.5,
+      | |         |           |     |   float_like=true]
+      | |         |           |     +-right_operand=FunctionCall[name=SUM]
+      | |         |           |       +-AttributeReference[
+      | |         |           |         attribute_name=l_quantity]
+      | |         |           +-where_clause=And
+      | |         |           | +-Equal
+      | |         |           | | +-left_operand=AttributeReference[
+      | |         |           | | | attribute_name=l_partkey]
+      | |         |           | | +-right_operand=AttributeReference[
+      | |         |           | |   attribute_name=ps_partkey]
+      | |         |           | +-Equal
+      | |         |           | | +-left_operand=AttributeReference[
+      | |         |           | | | attribute_name=l_suppkey]
+      | |         |           | | +-right_operand=AttributeReference[
+      | |         |           | |   attribute_name=ps_suppkey]
+      | |         |           | +-GreaterOrEqual
+      | |         |           | | +-left_operand=AttributeReference[
+      | |         |           | | | attribute_name=l_shipdate]
+      | |         |           | | +-right_operand=Literal
+      | |         |           | |   +-StringLiteral[value=1993-01-01,
+      | |         |           | |     explicit_type=Date]
+      | |         |           | +-Less
+      | |         |           |   +-left_operand=AttributeReference[
+      | |         |           |   | attribute_name=l_shipdate]
+      | |         |           |   +-right_operand=Add
+      | |         |           |     +-left_operand=Literal
+      | |         |           |     | +-StringLiteral[value=1993-01-01,
+      | |         |           |     |   explicit_type=Date]
+      | |         |           |     +-right_operand=Literal
+      | |         |           |       +-StringLiteral[value=1 year,
+      | |         |           |         explicit_type=YearMonthInterval]
+      | |         |           +-from_clause=
+      | |         |             +-TableReference[table=lineitem]
+      | |         +-from_clause=
+      | |           +-TableReference[table=partsupp]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
+      | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
+      | +-Equal
+      |   +-left_operand=AttributeReference[attribute_name=n_name]
+      |   +-right_operand=Literal
+      |     +-StringLiteral[value=GERMANY]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-AttributeReference[attribute_name=s_name]
+      +-from_clause=
+        +-TableReference[table=supplier]
+        +-TableReference[table=nation]
 ==
 
 # Query 21
@@ -2067,95 +2206,101 @@
   s_name
 LIMIT 100
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=s_name]
-  | +-SelectListItem[alias=numwait]
-  |   +-FunctionCall[name=count,is_star=true]
-  +-where_clause=And
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
-  | | +-right_operand=AttributeReference[attribute_name=l_suppkey,
-  | |   relation_name=l1]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=o_orderkey]
-  | | +-right_operand=AttributeReference[attribute_name=l_orderkey,
-  | |   relation_name=l1]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=o_orderstatus]
-  | | +-right_operand=Literal
-  | |   +-StringLiteral[value=F]
-  | +-Greater
-  | | +-left_operand=AttributeReference[attribute_name=l_receiptdate,
-  | | | relation_name=l1]
-  | | +-right_operand=AttributeReference[attribute_name=l_commitdate,
-  | |   relation_name=l1]
-  | +-Exists
-  | | +-subquery=SubqueryExpression
-  | |   +-Select
-  | |     +-select_clause=SelectStar
-  | |     +-where_clause=And
-  | |     | +-Equal
-  | |     | | +-left_operand=AttributeReference[attribute_name=l_orderkey,
-  | |     | | | relation_name=l2]
-  | |     | | +-right_operand=AttributeReference[attribute_name=l_orderkey,
-  | |     | |   relation_name=l1]
-  | |     | +-NotEqual
-  | |     |   +-left_operand=AttributeReference[attribute_name=l_suppkey,
-  | |     |   | relation_name=l2]
-  | |     |   +-right_operand=AttributeReference[attribute_name=l_suppkey,
-  | |     |     relation_name=l1]
-  | |     +-from_clause=
-  | |       +-TableReference[table=lineitem]
-  | |         +-table_signature=TableSignature[table_alias=l2]
-  | +-Not
-  | | +-Exists
-  | |   +-subquery=SubqueryExpression
-  | |     +-Select
-  | |       +-select_clause=SelectStar
-  | |       +-where_clause=And
-  | |       | +-Equal
-  | |       | | +-left_operand=AttributeReference[attribute_name=l_orderkey,
-  | |       | | | relation_name=l3]
-  | |       | | +-right_operand=AttributeReference[attribute_name=l_orderkey,
-  | |       | |   relation_name=l1]
-  | |       | +-NotEqual
-  | |       | | +-left_operand=AttributeReference[attribute_name=l_suppkey,
-  | |       | | | relation_name=l3]
-  | |       | | +-right_operand=AttributeReference[attribute_name=l_suppkey,
-  | |       | |   relation_name=l1]
-  | |       | +-Greater
-  | |       |   +-left_operand=AttributeReference[attribute_name=l_receiptdate,
-  | |       |   | relation_name=l3]
-  | |       |   +-right_operand=AttributeReference[attribute_name=l_commitdate,
-  | |       |     relation_name=l3]
-  | |       +-from_clause=
-  | |         +-TableReference[table=lineitem]
-  | |           +-table_signature=TableSignature[table_alias=l3]
-  | +-Equal
-  | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
-  | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
-  | +-Equal
-  |   +-left_operand=AttributeReference[attribute_name=n_name]
-  |   +-right_operand=Literal
-  |     +-StringLiteral[value=CANADA]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=s_name]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=false,nulls_first=true]
-  | | +-AttributeReference[attribute_name=numwait]
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-AttributeReference[attribute_name=s_name]
-  +-limit=LIMIT
-  | +-NumericLiteral[numeric_string=100,float_like=false]
-  +-from_clause=
-    +-TableReference[table=supplier]
-    +-TableReference[table=lineitem]
-    | +-table_signature=TableSignature[table_alias=l1]
-    +-TableReference[table=orders]
-    +-TableReference[table=nation]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=s_name]
+      | +-SelectListItem[alias=numwait]
+      |   +-FunctionCall[name=count,is_star=true]
+      +-where_clause=And
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=s_suppkey]
+      | | +-right_operand=AttributeReference[attribute_name=l_suppkey,
+      | |   relation_name=l1]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=o_orderkey]
+      | | +-right_operand=AttributeReference[attribute_name=l_orderkey,
+      | |   relation_name=l1]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=o_orderstatus]
+      | | +-right_operand=Literal
+      | |   +-StringLiteral[value=F]
+      | +-Greater
+      | | +-left_operand=AttributeReference[attribute_name=l_receiptdate,
+      | | | relation_name=l1]
+      | | +-right_operand=AttributeReference[attribute_name=l_commitdate,
+      | |   relation_name=l1]
+      | +-Exists
+      | | +-subquery=SubqueryExpression
+      | |   +-SetOperation[set_operation_type=Select]
+      | |     +-children=
+      | |       +-Select
+      | |         +-select_clause=SelectStar
+      | |         +-where_clause=And
+      | |         | +-Equal
+      | |         | | +-left_operand=AttributeReference[
+      | |         | | | attribute_name=l_orderkey,relation_name=l2]
+      | |         | | +-right_operand=AttributeReference[
+      | |         | |   attribute_name=l_orderkey,relation_name=l1]
+      | |         | +-NotEqual
+      | |         |   +-left_operand=AttributeReference[
+      | |         |   | attribute_name=l_suppkey,relation_name=l2]
+      | |         |   +-right_operand=AttributeReference[
+      | |         |     attribute_name=l_suppkey,relation_name=l1]
+      | |         +-from_clause=
+      | |           +-TableReference[table=lineitem]
+      | |             +-table_signature=TableSignature[table_alias=l2]
+      | +-Not
+      | | +-Exists
+      | |   +-subquery=SubqueryExpression
+      | |     +-SetOperation[set_operation_type=Select]
+      | |       +-children=
+      | |         +-Select
+      | |           +-select_clause=SelectStar
+      | |           +-where_clause=And
+      | |           | +-Equal
+      | |           | | +-left_operand=AttributeReference[
+      | |           | | | attribute_name=l_orderkey,relation_name=l3]
+      | |           | | +-right_operand=AttributeReference[
+      | |           | |   attribute_name=l_orderkey,relation_name=l1]
+      | |           | +-NotEqual
+      | |           | | +-left_operand=AttributeReference[
+      | |           | | | attribute_name=l_suppkey,relation_name=l3]
+      | |           | | +-right_operand=AttributeReference[
+      | |           | |   attribute_name=l_suppkey,relation_name=l1]
+      | |           | +-Greater
+      | |           |   +-left_operand=AttributeReference[
+      | |           |   | attribute_name=l_receiptdate,relation_name=l3]
+      | |           |   +-right_operand=AttributeReference[
+      | |           |     attribute_name=l_commitdate,relation_name=l3]
+      | |           +-from_clause=
+      | |             +-TableReference[table=lineitem]
+      | |               +-table_signature=TableSignature[table_alias=l3]
+      | +-Equal
+      | | +-left_operand=AttributeReference[attribute_name=s_nationkey]
+      | | +-right_operand=AttributeReference[attribute_name=n_nationkey]
+      | +-Equal
+      |   +-left_operand=AttributeReference[attribute_name=n_name]
+      |   +-right_operand=Literal
+      |     +-StringLiteral[value=CANADA]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=s_name]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=false,nulls_first=true]
+      | | +-AttributeReference[attribute_name=numwait]
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-AttributeReference[attribute_name=s_name]
+      +-limit=LIMIT
+      | +-NumericLiteral[numeric_string=100,float_like=false]
+      +-from_clause=
+        +-TableReference[table=supplier]
+        +-TableReference[table=lineitem]
+        | +-table_signature=TableSignature[table_alias=l1]
+        +-TableReference[table=orders]
+        +-TableReference[table=nation]
 ==
 
 # Query 22
@@ -2196,106 +2341,121 @@
 ORDER BY
   cntrycode
 --
-SelectStatement
-+-select_query=Select
-  +-select_clause=SelectList
-  | +-SelectListItem
-  | | +-AttributeReference[attribute_name=cntrycode]
-  | +-SelectListItem[alias=numcust]
-  | | +-FunctionCall[name=COUNT,is_star=true]
-  | +-SelectListItem[alias=totacctbal]
-  |   +-FunctionCall[name=SUM]
-  |     +-AttributeReference[attribute_name=c_acctbal]
-  +-group_by=GroupBy
-  | +-AttributeReference[attribute_name=cntrycode]
-  +-order_by=OrderBy
-  | +-OrderByItem[is_asc=true,nulls_first=false]
-  |   +-AttributeReference[attribute_name=cntrycode]
-  +-from_clause=
-    +-SubqueryTable
-      +-table_signature=TableSignature[table_alias=custsale]
-      +-SubqueryExpression
-        +-Select
-          +-select_clause=SelectList
-          | +-SelectListItem[alias=cntrycode]
-          | | +-FunctionCall[name=SUBSTR]
-          | |   +-AttributeReference[attribute_name=c_phone]
-          | |   +-Literal
-          | |   | +-NumericLiteral[numeric_string=1,float_like=false]
-          | |   +-Literal
-          | |     +-NumericLiteral[numeric_string=2,float_like=false]
-          | +-SelectListItem
-          |   +-AttributeReference[attribute_name=c_acctbal]
-          +-where_clause=And
-          | +-InValueList
-          | | +-test_expression=FunctionCall[name=SUBSTR]
-          | | | +-AttributeReference[attribute_name=c_phone]
-          | | | +-Literal
-          | | | | +-NumericLiteral[numeric_string=1,float_like=false]
-          | | | +-Literal
-          | | |   +-NumericLiteral[numeric_string=2,float_like=false]
-          | | +-value_list=
-          | |   +-Literal
-          | |   | +-StringLiteral[value=27]
-          | |   +-Literal
-          | |   | +-StringLiteral[value=44]
-          | |   +-Literal
-          | |   | +-StringLiteral[value=34]
-          | |   +-Literal
-          | |   | +-StringLiteral[value=25]
-          | |   +-Literal
-          | |   | +-StringLiteral[value=30]
-          | |   +-Literal
-          | |   | +-StringLiteral[value=33]
-          | |   +-Literal
-          | |     +-StringLiteral[value=23]
-          | +-Greater
-          | | +-left_operand=AttributeReference[attribute_name=c_acctbal]
-          | | +-right_operand=SubqueryExpression
-          | |   +-Select
-          | |     +-select_clause=SelectList
-          | |     | +-SelectListItem
-          | |     |   +-FunctionCall[name=AVG]
-          | |     |     +-AttributeReference[attribute_name=c_acctbal]
-          | |     +-where_clause=And
-          | |     | +-Greater
-          | |     | | +-left_operand=AttributeReference[attribute_name=c_acctbal]
-          | |     | | +-right_operand=Literal
-          | |     | |   +-NumericLiteral[numeric_string=0.00,float_like=true]
-          | |     | +-InValueList
-          | |     |   +-test_expression=FunctionCall[name=SUBSTR]
-          | |     |   | +-AttributeReference[attribute_name=c_phone]
-          | |     |   | +-Literal
-          | |     |   | | +-NumericLiteral[numeric_string=1,float_like=false]
-          | |     |   | +-Literal
-          | |     |   |   +-NumericLiteral[numeric_string=2,float_like=false]
-          | |     |   +-value_list=
-          | |     |     +-Literal
-          | |     |     | +-StringLiteral[value=27]
-          | |     |     +-Literal
-          | |     |     | +-StringLiteral[value=44]
-          | |     |     +-Literal
-          | |     |     | +-StringLiteral[value=34]
-          | |     |     +-Literal
-          | |     |     | +-StringLiteral[value=25]
-          | |     |     +-Literal
-          | |     |     | +-StringLiteral[value=30]
-          | |     |     +-Literal
-          | |     |     | +-StringLiteral[value=33]
-          | |     |     +-Literal
-          | |     |       +-StringLiteral[value=23]
-          | |     +-from_clause=
-          | |       +-TableReference[table=customer]
-          | +-Not
-          |   +-Exists
-          |     +-subquery=SubqueryExpression
-          |       +-Select
-          |         +-select_clause=SelectStar
-          |         +-where_clause=Equal
-          |         | +-left_operand=AttributeReference[attribute_name=o_custkey]
-          |         | +-right_operand=AttributeReference[
-          |         |   attribute_name=c_custkey]
-          |         +-from_clause=
-          |           +-TableReference[table=orders]
-          +-from_clause=
-            +-TableReference[table=customer]
+SetOperationStatement
++-set_operation_query=SetOperation[set_operation_type=Select]
+  +-children=
+    +-Select
+      +-select_clause=SelectList
+      | +-SelectListItem
+      | | +-AttributeReference[attribute_name=cntrycode]
+      | +-SelectListItem[alias=numcust]
+      | | +-FunctionCall[name=COUNT,is_star=true]
+      | +-SelectListItem[alias=totacctbal]
+      |   +-FunctionCall[name=SUM]
+      |     +-AttributeReference[attribute_name=c_acctbal]
+      +-group_by=GroupBy
+      | +-AttributeReference[attribute_name=cntrycode]
+      +-order_by=OrderBy
+      | +-OrderByItem[is_asc=true,nulls_first=false]
+      |   +-AttributeReference[attribute_name=cntrycode]
+      +-from_clause=
+        +-SubqueryTable
+          +-table_signature=TableSignature[table_alias=custsale]
+          +-SubqueryExpression
+            +-SetOperation[set_operation_type=Select]
+              +-children=
+                +-Select
+                  +-select_clause=SelectList
+                  | +-SelectListItem[alias=cntrycode]
+                  | | +-FunctionCall[name=SUBSTR]
+                  | |   +-AttributeReference[attribute_name=c_phone]
+                  | |   +-Literal
+                  | |   | +-NumericLiteral[numeric_string=1,float_like=false]
+                  | |   +-Literal
+                  | |     +-NumericLiteral[numeric_string=2,float_like=false]
+                  | +-SelectListItem
+                  |   +-AttributeReference[attribute_name=c_acctbal]
+                  +-where_clause=And
+                  | +-InValueList
+                  | | +-test_expression=FunctionCall[name=SUBSTR]
+                  | | | +-AttributeReference[attribute_name=c_phone]
+                  | | | +-Literal
+                  | | | | +-NumericLiteral[numeric_string=1,float_like=false]
+                  | | | +-Literal
+                  | | |   +-NumericLiteral[numeric_string=2,float_like=false]
+                  | | +-value_list=
+                  | |   +-Literal
+                  | |   | +-StringLiteral[value=27]
+                  | |   +-Literal
+                  | |   | +-StringLiteral[value=44]
+                  | |   +-Literal
+                  | |   | +-StringLiteral[value=34]
+                  | |   +-Literal
+                  | |   | +-StringLiteral[value=25]
+                  | |   +-Literal
+                  | |   | +-StringLiteral[value=30]
+                  | |   +-Literal
+                  | |   | +-StringLiteral[value=33]
+                  | |   +-Literal
+                  | |     +-StringLiteral[value=23]
+                  | +-Greater
+                  | | +-left_operand=AttributeReference[attribute_name=c_acctbal]
+                  | | +-right_operand=SubqueryExpression
+                  | |   +-SetOperation[set_operation_type=Select]
+                  | |     +-children=
+                  | |       +-Select
+                  | |         +-select_clause=SelectList
+                  | |         | +-SelectListItem
+                  | |         |   +-FunctionCall[name=AVG]
+                  | |         |     +-AttributeReference[
+                  | |         |       attribute_name=c_acctbal]
+                  | |         +-where_clause=And
+                  | |         | +-Greater
+                  | |         | | +-left_operand=AttributeReference[
+                  | |         | | | attribute_name=c_acctbal]
+                  | |         | | +-right_operand=Literal
+                  | |         | |   +-NumericLiteral[numeric_string=0.00,
+                  | |         | |     float_like=true]
+                  | |         | +-InValueList
+                  | |         |   +-test_expression=FunctionCall[name=SUBSTR]
+                  | |         |   | +-AttributeReference[attribute_name=c_phone]
+                  | |         |   | +-Literal
+                  | |         |   | | +-NumericLiteral[numeric_string=1,
+                  | |         |   | |   float_like=false]
+                  | |         |   | +-Literal
+                  | |         |   |   +-NumericLiteral[numeric_string=2,
+                  | |         |   |     float_like=false]
+                  | |         |   +-value_list=
+                  | |         |     +-Literal
+                  | |         |     | +-StringLiteral[value=27]
+                  | |         |     +-Literal
+                  | |         |     | +-StringLiteral[value=44]
+                  | |         |     +-Literal
+                  | |         |     | +-StringLiteral[value=34]
+                  | |         |     +-Literal
+                  | |         |     | +-StringLiteral[value=25]
+                  | |         |     +-Literal
+                  | |         |     | +-StringLiteral[value=30]
+                  | |         |     +-Literal
+                  | |         |     | +-StringLiteral[value=33]
+                  | |         |     +-Literal
+                  | |         |       +-StringLiteral[value=23]
+                  | |         +-from_clause=
+                  | |           +-TableReference[table=customer]
+                  | +-Not
+                  |   +-Exists
+                  |     +-subquery=SubqueryExpression
+                  |       +-SetOperation[set_operation_type=Select]
+                  |         +-children=
+                  |           +-Select
+                  |             +-select_clause=SelectStar
+                  |             +-where_clause=Equal
+                  |             | +-left_operand=AttributeReference[
+                  |             | | attribute_name=o_custkey]
+                  |             | +-right_operand=AttributeReference[
+                  |             |   attribute_name=c_custkey]
+                  |             +-from_clause=
+                  |               +-TableReference[table=orders]
+                  +-from_clause=
+                    +-TableReference[table=customer]
+==
diff --git a/query_optimizer/logical/CMakeLists.txt b/query_optimizer/logical/CMakeLists.txt
index 8aca550..4480e0b 100644
--- a/query_optimizer/logical/CMakeLists.txt
+++ b/query_optimizer/logical/CMakeLists.txt
@@ -35,6 +35,7 @@
 add_library(quickstep_queryoptimizer_logical_PatternMatcher ../../empty_src.cpp PatternMatcher.hpp)
 add_library(quickstep_queryoptimizer_logical_Project Project.cpp Project.hpp)
 add_library(quickstep_queryoptimizer_logical_Sample Sample.cpp Sample.hpp)
+add_library(quickstep_queryoptimizer_logical_SetOperation ../../empty_src.cpp SetOperation.hpp)
 add_library(quickstep_queryoptimizer_logical_SharedSubplanReference
             SharedSubplanReference.cpp
             SharedSubplanReference.hpp)
@@ -204,6 +205,13 @@
                       quickstep_queryoptimizer_logical_LogicalType
                       quickstep_utility_Cast
                       quickstep_utility_Macros)
+target_link_libraries(quickstep_queryoptimizer_logical_SetOperation
+                      quickstep_queryoptimizer_OptimizerTree
+                      quickstep_queryoptimizer_expressions_AttributeReference
+                      quickstep_queryoptimizer_logical_Logical
+                      quickstep_queryoptimizer_logical_LogicalType
+                      quickstep_utility_Cast
+                      quickstep_utility_Macros)
 target_link_libraries(quickstep_queryoptimizer_logical_SharedSubplanReference
                       glog
                       quickstep_queryoptimizer_OptimizerTree
@@ -298,6 +306,7 @@
                       quickstep_queryoptimizer_logical_PatternMatcher
                       quickstep_queryoptimizer_logical_Project
                       quickstep_queryoptimizer_logical_Sample
+                      quickstep_queryoptimizer_logical_SetOperation
                       quickstep_queryoptimizer_logical_SharedSubplanReference
                       quickstep_queryoptimizer_logical_Sort
                       quickstep_queryoptimizer_logical_TableGenerator
diff --git a/query_optimizer/logical/LogicalType.hpp b/query_optimizer/logical/LogicalType.hpp
index d1011b0..21ffdca 100644
--- a/query_optimizer/logical/LogicalType.hpp
+++ b/query_optimizer/logical/LogicalType.hpp
@@ -46,6 +46,7 @@
   kNestedLoopsJoin,
   kProject,
   kSample,
+  kSetOperation,
   kSharedSubplanReference,
   kSort,
   kTableGenerator,
diff --git a/query_optimizer/logical/PatternMatcher.hpp b/query_optimizer/logical/PatternMatcher.hpp
index b931ace..23c2872 100644
--- a/query_optimizer/logical/PatternMatcher.hpp
+++ b/query_optimizer/logical/PatternMatcher.hpp
@@ -42,6 +42,7 @@
 class MultiwayCartesianJoin;
 class NestedLoopsJoin;
 class Project;
+class SetOperation;
 class SharedSubplanReference;
 class Sort;
 class TableReference;
@@ -128,6 +129,7 @@
 using SomeMultiwayCartesianJoin = SomeLogicalNode<MultiwayCartesianJoin, LogicalType::kMultiwayCartesianJoin>;
 using SomeNestedLoopsJoin = SomeLogicalNode<NestedLoopsJoin, LogicalType::kNestedLoopsJoin>;
 using SomeProject = SomeLogicalNode<Project, LogicalType::kProject>;
+using SomeSetOperation = SomeLogicalNode<SetOperation, LogicalType::kSetOperation>;
 using SomeSharedSubplanReference = SomeLogicalNode<SharedSubplanReference, LogicalType::kSharedSubplanReference>;
 using SomeSort = SomeLogicalNode<Sort, LogicalType::kSort>;
 using SomeTableReference = SomeLogicalNode<TableReference, LogicalType::kTableReference>;
diff --git a/query_optimizer/logical/SetOperation.hpp b/query_optimizer/logical/SetOperation.hpp
new file mode 100644
index 0000000..7e45231
--- /dev/null
+++ b/query_optimizer/logical/SetOperation.hpp
@@ -0,0 +1,182 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ **/
+
+#ifndef QUICKSTEP_QUERY_OPTIMIZER_LOGICAL_SET_OPERATION_HPP_
+#define QUICKSTEP_QUERY_OPTIMIZER_LOGICAL_SET_OPERATION_HPP_
+
+#include <string>
+#include <type_traits>
+#include <vector>
+
+#include "query_optimizer/OptimizerTree.hpp"
+#include "query_optimizer/expressions/AttributeReference.hpp"
+#include "query_optimizer/logical/Logical.hpp"
+#include "query_optimizer/logical/LogicalType.hpp"
+#include "utility/Cast.hpp"
+#include "utility/Macros.hpp"
+
+#include "glog/logging.h"
+
+namespace quickstep {
+namespace optimizer {
+namespace logical {
+
+/** \addtogroup OptimizerLogical
+ *  @{
+ */
+
+class SetOperation;
+typedef std::shared_ptr<const SetOperation> SetOperationPtr;
+
+/**
+ * @brief Base class for logical set operation operator that combines tuples
+ *        from two or more relations.
+ */
+class SetOperation : public Logical {
+ public:
+  enum SetOperationType {
+    kIntersect = 0,
+    kUnion,
+    kUnionAll
+  };
+
+  /**
+   * @brief Destructor.
+   */
+  ~SetOperation() override {}
+
+  LogicalType getLogicalType() const override {
+    return LogicalType::kSetOperation;
+  }
+
+  std::string getName() const override {
+    switch (set_operation_type_) {
+      case SetOperationType::kIntersect:
+        return "Intersect";
+      case SetOperationType::kUnion:
+        return "Union";
+      case SetOperationType::kUnionAll:
+        return "UnionAll";
+      default:
+        LOG(FATAL) << "Invalid set operation type: "
+                   << static_cast<typename std::underlying_type<SetOperationType>::type>(set_operation_type_);
+    }
+  }
+
+  /**
+   * @return The set operation type
+   */
+  SetOperationType getSetOperationType() const {
+    return set_operation_type_;
+  }
+
+  /**
+   * @return The operands for set operation.
+   */
+  const std::vector<LogicalPtr>& getOperands() const {
+    return operands_;
+  }
+
+  std::vector<expressions::AttributeReferencePtr> getOutputAttributes() const override {
+    return project_attributes_;
+  }
+
+  std::vector<expressions::AttributeReferencePtr> getReferencedAttributes() const override {
+    std::vector<expressions::AttributeReferencePtr> referenced_attributes;
+    for (const auto &operand : operands_) {
+      const std::vector<expressions::AttributeReferencePtr> reference =
+          operand->getOutputAttributes();
+      referenced_attributes.insert(referenced_attributes.end(),
+                                   reference.begin(),
+                                   reference.end());
+    }
+    return referenced_attributes;
+  }
+
+  LogicalPtr copyWithNewChildren(
+      const std::vector<LogicalPtr> &new_children) const override {
+    DCHECK_EQ(new_children.size(), children().size());
+    return SetOperation::Create(set_operation_type_, new_children, project_attributes_);
+  }
+
+  /**
+   * @brief Create a logical set operation operator that combines two or more
+   *        relations.
+   *
+   * @param type The type of set operation.
+   * @param operands The operands of the set operation.
+   * @param project_attributes The project attributes of this set operation.
+   */
+  static SetOperationPtr Create(
+      const SetOperationType type,
+      const std::vector<LogicalPtr> &operands,
+      const std::vector<expressions::AttributeReferencePtr> &project_attributes) {
+    DCHECK_GT(operands.size(), 1u);
+    return SetOperationPtr(new SetOperation(type, operands, project_attributes));
+  }
+
+ protected:
+  void getFieldStringItems(
+      std::vector<std::string> *inline_field_names,
+      std::vector<std::string> *inline_field_values,
+      std::vector<std::string> *non_container_child_field_names,
+      std::vector<OptimizerTreeBaseNodePtr> *non_container_child_fields,
+      std::vector<std::string> *container_child_field_names,
+      std::vector<std::vector<OptimizerTreeBaseNodePtr>> *container_child_fields) const override {
+    inline_field_names->push_back("set_operation_type");
+    inline_field_values->push_back(getName());
+
+    container_child_field_names->push_back("operands");
+    container_child_fields->push_back(
+        CastSharedPtrVector<OptimizerTreeBase>(operands_));
+
+    container_child_field_names->push_back("project_attributes");
+    container_child_fields->push_back(
+        CastSharedPtrVector<OptimizerTreeBase>(project_attributes_));
+  }
+
+ private:
+  /**
+   * @brief Constructor.
+   */
+  SetOperation(const SetOperationType set_operation_type,
+               const std::vector<LogicalPtr> &operands,
+               const std::vector<expressions::AttributeReferencePtr> &project_attributes)
+    : set_operation_type_(set_operation_type),
+      operands_(operands),
+      project_attributes_(project_attributes) {
+    for (const LogicalPtr &operand : operands) {
+      addChild(operand);
+    }
+  }
+
+  const SetOperationType set_operation_type_;
+  const std::vector<LogicalPtr> operands_;
+  const std::vector<expressions::AttributeReferencePtr> project_attributes_;
+
+  DISALLOW_COPY_AND_ASSIGN(SetOperation);
+};
+
+/** @} */
+
+}  // namespace logical
+}  // namespace optimizer
+}  // namespace quickstep
+
+#endif  // QUICKSTEP_QUERY_OPTIMIZER_LOGICAL_SET_OPERATION_HPP_
diff --git a/query_optimizer/resolver/CMakeLists.txt b/query_optimizer/resolver/CMakeLists.txt
index a34273e..4e364a6 100644
--- a/query_optimizer/resolver/CMakeLists.txt
+++ b/query_optimizer/resolver/CMakeLists.txt
@@ -109,6 +109,7 @@
                       quickstep_queryoptimizer_logical_MultiwayCartesianJoin
                       quickstep_queryoptimizer_logical_Project
                       quickstep_queryoptimizer_logical_Sample
+                      quickstep_queryoptimizer_logical_SetOperation
                       quickstep_queryoptimizer_logical_SharedSubplanReference
                       quickstep_queryoptimizer_logical_Sort
                       quickstep_queryoptimizer_logical_TableGenerator
diff --git a/query_optimizer/resolver/Resolver.cpp b/query_optimizer/resolver/Resolver.cpp
index ed465e5..2d3a06b 100644
--- a/query_optimizer/resolver/Resolver.cpp
+++ b/query_optimizer/resolver/Resolver.cpp
@@ -104,6 +104,7 @@
 #include "query_optimizer/logical/MultiwayCartesianJoin.hpp"
 #include "query_optimizer/logical/Project.hpp"
 #include "query_optimizer/logical/Sample.hpp"
+#include "query_optimizer/logical/SetOperation.hpp"
 #include "query_optimizer/logical/SharedSubplanReference.hpp"
 #include "query_optimizer/logical/Sort.hpp"
 #include "query_optimizer/logical/TableGenerator.hpp"
@@ -372,23 +373,23 @@
       }
       break;
     }
-    case ParseStatement::kSelect: {
-      const ParseStatementSelect &select_statement =
-          static_cast<const ParseStatementSelect&>(parse_query);
-      if (select_statement.with_clause() != nullptr) {
-        resolveWithClause(*select_statement.with_clause());
+    case ParseStatement::kSetOperation: {
+      const ParseStatementSetOperation &set_operation_statement =
+          static_cast<const ParseStatementSetOperation&>(parse_query);
+      if (set_operation_statement.with_clause() != nullptr) {
+        resolveWithClause(*set_operation_statement.with_clause());
       }
       logical_plan_ =
-          resolveSelect(*select_statement.select_query(),
-                        "" /* select_name */,
-                        nullptr /* No Type hints */,
-                        nullptr /* parent_resolver */);
-      if (select_statement.with_clause() != nullptr) {
+          resolveSetOperation(*set_operation_statement.set_operation_query(),
+                              "" /* set_operation_name */,
+                              nullptr /* type_hints */,
+                              nullptr /* parent_resolver */);
+      if (set_operation_statement.with_clause() != nullptr) {
         // Report an error if there is a WITH query that is not actually used.
         if (!with_queries_info_.unreferenced_query_indexes.empty()) {
           int unreferenced_with_query_index = *with_queries_info_.unreferenced_query_indexes.begin();
           const ParseSubqueryTableReference &unreferenced_with_query =
-              (*select_statement.with_clause())[unreferenced_with_query_index];
+              (*set_operation_statement.with_clause())[unreferenced_with_query_index];
           THROW_SQL_ERROR_AT(&unreferenced_with_query)
               << "WITH query "
               << unreferenced_with_query.table_reference_signature()->table_alias()->value()
@@ -1350,16 +1351,173 @@
   return logical_plan;
 }
 
+L::LogicalPtr Resolver::resolveSetOperations(
+    const ParseSetOperation &parse_set_operations,
+    const std::string &set_operation_name,
+    const std::vector<const Type*> *type_hints,
+    const NameResolver *parent_resolver) {
+  std::vector<const ParseSetOperation*> operands;
+  CollapseSetOperation(parse_set_operations, parse_set_operations, &operands);
+
+  DCHECK_LT(1u, operands.size());
+  std::vector<L::LogicalPtr> resolved_operations;
+  std::vector<std::vector<E::AttributeReferencePtr>> attribute_matrix;
+
+  // Resolve the first operation, and get the output attributes.
+  auto iter = operands.begin();
+  const ParseSetOperation &operation = static_cast<const ParseSetOperation&>(**iter);
+  L::LogicalPtr operation_logical =
+      resolveSetOperation(operation, set_operation_name, type_hints, parent_resolver);
+  const std::vector<E::AttributeReferencePtr> operation_attributes =
+      operation_logical->getOutputAttributes();
+  attribute_matrix.push_back(operation_attributes);
+  resolved_operations.push_back(operation_logical);
+
+  // Resolve the rest operations, and check the size of output attributes.
+  for (++iter; iter != operands.end(); ++iter) {
+    const ParseSetOperation &current_operation =
+        static_cast<const ParseSetOperation&>(**iter);
+    L::LogicalPtr current_logical =
+        resolveSetOperation(current_operation, set_operation_name, type_hints, parent_resolver);
+    attribute_matrix.emplace_back(current_logical->getOutputAttributes());
+
+    // Check output attributes size.
+    // Detailed type check and type cast will perform later.
+    if (attribute_matrix.back().size() != operation_attributes.size()) {
+      THROW_SQL_ERROR_AT(&current_operation)
+          << "Can not perform " << parse_set_operations.getName()
+          << "opeartion between " << std::to_string(attribute_matrix.back().size())
+          << "and " << std::to_string(operation_attributes.size())
+          << "columns";
+    }
+
+    resolved_operations.push_back(current_logical);
+  }
+
+  // Get the possible output attributes that the attributes of all operands can cast to.
+  std::vector<E::AttributeReferencePtr> possible_attributes;
+  for (std::size_t aid = 0; aid < operation_attributes.size(); ++aid) {
+    E::AttributeReferencePtr possible_attribute = attribute_matrix[0][aid];
+    for (std::size_t opid = 1; opid < resolved_operations.size(); ++opid) {
+      const Type &current_type = attribute_matrix[opid][aid]->getValueType();
+      const Type &possible_type = possible_attribute->getValueType();
+      if (!possible_type.equals(current_type)) {
+        if (possible_type.getSuperTypeID() == Type::SuperTypeID::kNumeric &&
+            current_type.getSuperTypeID() == Type::SuperTypeID::kNumeric) {
+          if (possible_type.isSafelyCoercibleFrom(current_type)) {
+            // Cast current_type to possible_type.
+            // Possible_attribute remain the same, nothing needs to change.
+          } else if (current_type.isSafelyCoercibleFrom(possible_type)) {
+            // Cast possible_type to current_type.
+            possible_attribute = attribute_matrix[opid][aid];
+          } else {
+            // Can not cast between possible_type and current_type.
+            // Throw an SQL error.
+            THROW_SQL_ERROR_AT(&parse_set_operations)
+                << "There is not a safely coerce between "
+                << current_type.getName()
+                << "and " << possible_type.getName();
+          }
+        } else {
+          THROW_SQL_ERROR_AT(&parse_set_operations)
+              << "Does not support cast operation between non-numeric types"
+              << current_type.getName()
+              << "and " << possible_type.getName();
+        }
+      }
+    }
+    possible_attributes.push_back(possible_attribute);
+  }
+
+  for (std::size_t opid = 0; opid < operation_attributes.size(); ++opid) {
+    // Generate a cast operation if needed.
+    std::vector<E::NamedExpressionPtr> cast_expressions;
+    for (std::size_t aid = 0; aid < operation_attributes.size(); ++aid) {
+      const E::AttributeReferencePtr current_attr = attribute_matrix[opid][aid];
+      const Type &current_type = current_attr->getValueType();
+      const Type &possible_type = possible_attributes[aid]->getValueType();
+      if (possible_type.equals(current_type)) {
+        cast_expressions.emplace_back(current_attr);
+      } else {
+        cast_expressions.emplace_back(
+            E::Alias::Create(context_->nextExprId(),
+                             E::Cast::Create(current_attr, possible_type),
+                             current_attr->attribute_name(),
+                             current_attr->attribute_alias()));
+      }
+    }
+    resolved_operations[opid] = L::Project::Create(resolved_operations[opid], cast_expressions);
+  }
+
+  std::vector<E::AttributeReferencePtr> output_attributes;
+  for (const auto &attr : possible_attributes) {
+    output_attributes.emplace_back(
+        E::AttributeReference::Create(context_->nextExprId(),
+                                      attr->attribute_name(),
+                                      attr->attribute_alias(),
+                                      "" /* relation_name */,
+                                      attr->getValueType(),
+                                      attr->scope()));
+  }
+
+  // Generate the set operation logical node.
+  switch (parse_set_operations.getOperationType()) {
+    case ParseSetOperation::kIntersect:
+      return L::SetOperation::Create(
+          L::SetOperation::kIntersect, resolved_operations, output_attributes);
+    case ParseSetOperation::kUnion:
+      return L::SetOperation::Create(
+          L::SetOperation::kUnion, resolved_operations, output_attributes);
+    case ParseSetOperation::kUnionAll:
+      return L::SetOperation::Create(
+          L::SetOperation::kUnionAll, resolved_operations, output_attributes);
+    default:
+      LOG(FATAL) << "Unknown operation: " << parse_set_operations.toString();
+      return nullptr;
+  }
+}
+
+L::LogicalPtr Resolver::resolveSetOperation(
+    const ParseSetOperation &set_operation_query,
+    const std::string &set_operation_name,
+    const std::vector<const Type*> *type_hints,
+    const NameResolver *parent_resolver) {
+  switch (set_operation_query.getOperationType()) {
+    case ParseSetOperation::kIntersect:
+    case ParseSetOperation::kUnion:
+    case ParseSetOperation::kUnionAll: {
+      return resolveSetOperations(set_operation_query,
+                                  set_operation_name,
+                                  type_hints,
+                                  parent_resolver);
+    }
+    case ParseSetOperation::kSelect: {
+      DCHECK_EQ(1u, set_operation_query.operands().size());
+      const ParseSelect &select_query =
+          static_cast<const ParseSelect&>(set_operation_query.operands().front());
+      return resolveSelect(select_query,
+                           set_operation_name,
+                           type_hints,
+                           parent_resolver);
+    }
+    default:
+      LOG(FATAL) << "Unknown set operation: " << set_operation_query.toString();
+      return nullptr;
+  }
+}
+
 E::SubqueryExpressionPtr Resolver::resolveSubqueryExpression(
     const ParseSubqueryExpression &parse_subquery_expression,
     const std::vector<const Type*> *type_hints,
     ExpressionResolutionInfo *expression_resolution_info,
     const bool has_single_column) {
+
+  // Subquery is now a set operation, not only a select operation
   L::LogicalPtr logical_subquery =
-      resolveSelect(*parse_subquery_expression.query(),
-                    "" /* select_name */,
-                    type_hints,
-                    &expression_resolution_info->name_resolver);
+      resolveSetOperation(*parse_subquery_expression.set_operation(),
+                          "" /* set_operation_name */,
+                          type_hints,
+                          &expression_resolution_info->name_resolver);
 
   // Raise SQL error if the subquery is expected to return only one column but
   // it returns multiple columns.
@@ -1614,10 +1772,10 @@
       DCHECK(reference_signature->table_alias() != nullptr);
 
       reference_alias = reference_signature->table_alias();
-      logical_plan = resolveSelect(
-          *static_cast<const ParseSubqueryTableReference&>(table_reference).subquery_expr()->query(),
+      logical_plan = resolveSetOperation(
+          *static_cast<const ParseSubqueryTableReference&>(table_reference).subquery_expr()->set_operation(),
           reference_alias->value(),
-          nullptr /* No Type hints */,
+          nullptr /* type_hints */,
           nullptr /* parent_resolver */);
 
       if (reference_signature->column_aliases() != nullptr) {
@@ -3164,6 +3322,20 @@
   }
 }
 
+void Resolver::CollapseSetOperation(const ParseSetOperation &toplevel,
+                                    const ParseSetOperation &current,
+                                    std::vector<const ParseSetOperation*> *output) {
+  if (current.getOperationType() == ParseSetOperation::kSelect ||
+      current.getOperationType() != toplevel.getOperationType()) {
+    output->emplace_back(&current);
+  } else {
+    for (const auto &child : current.operands()) {
+      CollapseSetOperation(
+          toplevel, static_cast<const ParseSetOperation&>(child), output);
+    }
+  }
+}
+
 std::string Resolver::GenerateWindowAggregateAttributeAlias(int index) {
   return "$window_aggregate" + std::to_string(index);
 }
diff --git a/query_optimizer/resolver/Resolver.hpp b/query_optimizer/resolver/Resolver.hpp
index a3d0833..1ae565a 100644
--- a/query_optimizer/resolver/Resolver.hpp
+++ b/query_optimizer/resolver/Resolver.hpp
@@ -50,6 +50,7 @@
 class ParseSearchedCaseExpression;
 class ParseSelect;
 class ParseSelectionClause;
+class ParseSetOperation;
 class ParseSimpleCaseExpression;
 class ParseSimpleTableReference;
 class ParseSubqueryTableReference;
@@ -61,7 +62,7 @@
 class ParseStatementDropTable;
 class ParseStatementInsertSelection;
 class ParseStatementInsertTuple;
-class ParseStatementSelect;
+class ParseStatementSetOperation;
 class ParseStatementUpdate;
 class ParseString;
 class ParseSubqueryExpression;
@@ -183,6 +184,24 @@
       const NameResolver *parent_resolver);
 
   /**
+   * @brief Resolves multiple set operations at the same level.
+   */
+  logical::LogicalPtr resolveSetOperations(
+      const ParseSetOperation &parse_set_operations,
+      const std::string &set_operation_name,
+      const std::vector<const Type*> *type_hints,
+      const NameResolver *parent_resolver);
+
+  /**
+   * @brief Resolves a set operation and returns a logical plan.
+   */
+  logical::LogicalPtr resolveSetOperation(
+      const ParseSetOperation &set_operation_query,
+      const std::string &set_operation_name,
+      const std::vector<const Type*> *type_hints,
+      const NameResolver *parent_resolver);
+
+  /**
    * @brief Resolves a CREATE TABLE query and returns a logical plan.
    *
    * @param create_table_statement The CREATE TABLE parse tree.
@@ -559,6 +578,13 @@
                                  const expressions::ScalarPtr &right_operand) const;
 
   /**
+   * @brief Collapse tree of homogenous set operations into a flat vector.
+   */
+  static void CollapseSetOperation(const ParseSetOperation &toplevel,
+                                   const ParseSetOperation &current,
+                                   std::vector<const ParseSetOperation*> *output);
+
+  /**
    * @brief Generates an internal alias for an aggregate attribute.
    *
    * @param index The index of the aggregate attribute used for generating the
