|
|
@ -495,7 +495,7 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query); |
|
|
|
%type <node> def_arg columnElem where_clause where_or_current_clause |
|
|
|
%type <node> def_arg columnElem where_clause where_or_current_clause |
|
|
|
a_expr b_expr c_expr AexprConst indirection_el opt_slice_bound |
|
|
|
a_expr b_expr c_expr AexprConst indirection_el opt_slice_bound |
|
|
|
columnref in_expr having_clause func_table xmltable array_expr |
|
|
|
columnref in_expr having_clause func_table xmltable array_expr |
|
|
|
ExclusionWhereClause operator_def_arg |
|
|
|
OptWhereClause operator_def_arg |
|
|
|
%type <list> rowsfrom_item rowsfrom_list opt_col_def_list |
|
|
|
%type <list> rowsfrom_item rowsfrom_list opt_col_def_list |
|
|
|
%type <boolean> opt_ordinality |
|
|
|
%type <boolean> opt_ordinality |
|
|
|
%type <list> ExclusionConstraintList ExclusionConstraintElem |
|
|
|
%type <list> ExclusionConstraintList ExclusionConstraintElem |
|
|
@ -3837,7 +3837,7 @@ ConstraintElem: |
|
|
|
$$ = (Node *)n; |
|
|
|
$$ = (Node *)n; |
|
|
|
} |
|
|
|
} |
|
|
|
| EXCLUDE access_method_clause '(' ExclusionConstraintList ')' |
|
|
|
| EXCLUDE access_method_clause '(' ExclusionConstraintList ')' |
|
|
|
opt_c_include opt_definition OptConsTableSpace ExclusionWhereClause |
|
|
|
opt_c_include opt_definition OptConsTableSpace OptWhereClause |
|
|
|
ConstraintAttributeSpec |
|
|
|
ConstraintAttributeSpec |
|
|
|
{ |
|
|
|
{ |
|
|
|
Constraint *n = makeNode(Constraint); |
|
|
|
Constraint *n = makeNode(Constraint); |
|
|
@ -3939,7 +3939,7 @@ ExclusionConstraintElem: index_elem WITH any_operator |
|
|
|
} |
|
|
|
} |
|
|
|
; |
|
|
|
; |
|
|
|
|
|
|
|
|
|
|
|
ExclusionWhereClause: |
|
|
|
OptWhereClause: |
|
|
|
WHERE '(' a_expr ')' { $$ = $3; } |
|
|
|
WHERE '(' a_expr ')' { $$ = $3; } |
|
|
|
| /*EMPTY*/ { $$ = NULL; } |
|
|
|
| /*EMPTY*/ { $$ = NULL; } |
|
|
|
; |
|
|
|
; |
|
|
|