Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Gpdb
提交
ad494886
G
Gpdb
项目概览
Greenplum
/
Gpdb
通知
7
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gpdb
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
ad494886
编写于
7月 13, 1999
作者:
B
Bruce Momjian
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Remove S*I comments from Stephan.
上级
050371fc
变更
13
隐藏空白更改
内联
并排
Showing
13 changed file
with
12 addition
and
58 deletion
+12
-58
src/backend/executor/execAmi.c
src/backend/executor/execAmi.c
+1
-2
src/backend/nodes/readfuncs.c
src/backend/nodes/readfuncs.c
+1
-2
src/backend/parser/analyze.c
src/backend/parser/analyze.c
+1
-7
src/backend/parser/gram.y
src/backend/parser/gram.y
+1
-10
src/backend/parser/keywords.c
src/backend/parser/keywords.c
+1
-3
src/backend/rewrite/rewriteHandler.c
src/backend/rewrite/rewriteHandler.c
+1
-7
src/backend/rewrite/rewriteManip.c
src/backend/rewrite/rewriteManip.c
+1
-10
src/include/executor/nodeGroup.h
src/include/executor/nodeGroup.h
+1
-2
src/include/nodes/parsenodes.h
src/include/nodes/parsenodes.h
+1
-4
src/include/parser/analyze.h
src/include/parser/analyze.h
+1
-2
src/include/utils/elog.h
src/include/utils/elog.h
+1
-2
src/interfaces/ecpg/preproc/keywords.c
src/interfaces/ecpg/preproc/keywords.c
+1
-3
src/interfaces/ecpg/preproc/preproc.y
src/interfaces/ecpg/preproc/preproc.y
+0
-4
未找到文件。
src/backend/executor/execAmi.c
浏览文件 @
ad494886
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
*
*
* Copyright (c) 1994, Regents of the University of California
* Copyright (c) 1994, Regents of the University of California
*
*
* $Id: execAmi.c,v 1.3
5 1999/05/25 16:08:34
momjian Exp $
* $Id: execAmi.c,v 1.3
6 1999/07/13 21:17:31
momjian Exp $
*
*
*-------------------------------------------------------------------------
*-------------------------------------------------------------------------
*/
*/
...
@@ -38,7 +38,6 @@
...
@@ -38,7 +38,6 @@
#include "executor/nodeNestloop.h"
#include "executor/nodeNestloop.h"
#include "executor/nodeHashjoin.h"
#include "executor/nodeHashjoin.h"
#include "executor/nodeHash.h"
#include "executor/nodeHash.h"
/***S*I***/
#include "executor/nodeGroup.h"
#include "executor/nodeGroup.h"
#include "executor/nodeAgg.h"
#include "executor/nodeAgg.h"
...
...
src/backend/nodes/readfuncs.c
浏览文件 @
ad494886
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
*
*
*
*
* IDENTIFICATION
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/nodes/readfuncs.c,v 1.6
4 1999/05/25 16:09:1
1 momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/nodes/readfuncs.c,v 1.6
5 1999/07/13 21:17:3
1 momjian Exp $
*
*
* NOTES
* NOTES
* Most of the read functions for plan nodes are tested. (In fact, they
* Most of the read functions for plan nodes are tested. (In fact, they
...
@@ -168,7 +168,6 @@ _readQuery()
...
@@ -168,7 +168,6 @@ _readQuery()
token
=
lsptok
(
NULL
,
&
length
);
/* skip :unionClause */
token
=
lsptok
(
NULL
,
&
length
);
/* skip :unionClause */
local_node
->
unionClause
=
nodeRead
(
true
);
local_node
->
unionClause
=
nodeRead
(
true
);
/***S*I***/
token
=
lsptok
(
NULL
,
&
length
);
/* skip :intersectClause */
token
=
lsptok
(
NULL
,
&
length
);
/* skip :intersectClause */
local_node
->
intersectClause
=
nodeRead
(
true
);
local_node
->
intersectClause
=
nodeRead
(
true
);
...
...
src/backend/parser/analyze.c
浏览文件 @
ad494886
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
*
*
* Copyright (c) 1994, Regents of the University of California
* Copyright (c) 1994, Regents of the University of California
*
*
* $Id: analyze.c,v 1.11
0 1999/06/05 20:22:30 tgl
Exp $
* $Id: analyze.c,v 1.11
1 1999/07/13 21:17:32 momjian
Exp $
*
*
*-------------------------------------------------------------------------
*-------------------------------------------------------------------------
*/
*/
...
@@ -26,7 +26,6 @@
...
@@ -26,7 +26,6 @@
#include "parser/parse_node.h"
#include "parser/parse_node.h"
#include "parser/parse_relation.h"
#include "parser/parse_relation.h"
#include "parser/parse_target.h"
#include "parser/parse_target.h"
/***S*I***/
#include "parser/parse_expr.h"
#include "parser/parse_expr.h"
#include "catalog/pg_type.h"
#include "catalog/pg_type.h"
#include "parse.h"
#include "parse.h"
...
@@ -382,8 +381,6 @@ transformInsertStmt(ParseState *pstate, InsertStmt *stmt)
...
@@ -382,8 +381,6 @@ transformInsertStmt(ParseState *pstate, InsertStmt *stmt)
*/
*/
qry
->
unionall
=
stmt
->
unionall
;
qry
->
unionall
=
stmt
->
unionall
;
/***S*I***/
/*
/*
* Just hand through the unionClause and intersectClause. We will
* Just hand through the unionClause and intersectClause. We will
* handle it in the function Except_Intersect_Rewrite()
* handle it in the function Except_Intersect_Rewrite()
...
@@ -1022,8 +1019,6 @@ transformSelectStmt(ParseState *pstate, SelectStmt *stmt)
...
@@ -1022,8 +1019,6 @@ transformSelectStmt(ParseState *pstate, SelectStmt *stmt)
*/
*/
qry
->
unionall
=
stmt
->
unionall
;
qry
->
unionall
=
stmt
->
unionall
;
/***S*I***/
/*
/*
* Just hand through the unionClause and intersectClause. We will
* Just hand through the unionClause and intersectClause. We will
* handle it in the function Except_Intersect_Rewrite()
* handle it in the function Except_Intersect_Rewrite()
...
@@ -1104,7 +1099,6 @@ transformCursorStmt(ParseState *pstate, SelectStmt *stmt)
...
@@ -1104,7 +1099,6 @@ transformCursorStmt(ParseState *pstate, SelectStmt *stmt)
return
qry
;
return
qry
;
}
}
/***S*I***/
/* This function steps through the tree
/* This function steps through the tree
* built up by the select_w_o_sort rule
* built up by the select_w_o_sort rule
* and builds a list of all SelectStmt Nodes found
* and builds a list of all SelectStmt Nodes found
...
...
src/backend/parser/gram.y
浏览文件 @
ad494886
...
@@ -10,7 +10,7 @@
...
@@ -10,7 +10,7 @@
*
*
*
*
* IDENTIFICATION
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.8
8 1999/07/09 21:59:59
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.8
9 1999/07/13 21:17:33
momjian Exp $
*
*
* HISTORY
* HISTORY
* AUTHOR DATE MAJOR EVENT
* AUTHOR DATE MAJOR EVENT
...
@@ -2465,7 +2465,6 @@ OptimizableStmt: SelectStmt
...
@@ -2465,7 +2465,6 @@ OptimizableStmt: SelectStmt
*
*
*****************************************************************************/
*****************************************************************************/
/***S*I***/
/* This rule used 'opt_column_list' between 'relation_name' and 'insert_rest'
/* This rule used 'opt_column_list' between 'relation_name' and 'insert_rest'
* originally. When the second rule of 'insert_rest' was changed to use
* originally. When the second rule of 'insert_rest' was changed to use
* the new 'SelectStmt' rule (for INTERSECT and EXCEPT) it produced a shift/reduce
* the new 'SelectStmt' rule (for INTERSECT and EXCEPT) it produced a shift/reduce
...
@@ -2500,10 +2499,8 @@ insert_rest: VALUES '(' res_target_list2 ')'
...
@@ -2500,10 +2499,8 @@ insert_rest: VALUES '(' res_target_list2 ')'
$$->groupClause = NIL;
$$->groupClause = NIL;
$$->havingClause = NULL;
$$->havingClause = NULL;
$$->unionClause = NIL;
$$->unionClause = NIL;
/***S*I***/
$$->intersectClause = NIL;
$$->intersectClause = NIL;
}
}
/***S*I***/
/* We want the full power of SelectStatements including INTERSECT and EXCEPT
/* We want the full power of SelectStatements including INTERSECT and EXCEPT
* for insertion */
* for insertion */
| SelectStmt
| SelectStmt
...
@@ -2534,7 +2531,6 @@ insert_rest: VALUES '(' res_target_list2 ')'
...
@@ -2534,7 +2531,6 @@ insert_rest: VALUES '(' res_target_list2 ')'
$$->groupClause = NIL;
$$->groupClause = NIL;
$$->havingClause = NULL;
$$->havingClause = NULL;
$$->unionClause = NIL;
$$->unionClause = NIL;
/***S*I***/
$$->intersectClause = NIL;
$$->intersectClause = NIL;
}
}
| '(' columnList ')' SelectStmt
| '(' columnList ')' SelectStmt
...
@@ -2646,7 +2642,6 @@ UpdateStmt: UPDATE relation_name
...
@@ -2646,7 +2642,6 @@ UpdateStmt: UPDATE relation_name
* CURSOR STATEMENTS
* CURSOR STATEMENTS
*
*
*****************************************************************************/
*****************************************************************************/
/***S*I***/
CursorStmt: DECLARE name opt_cursor CURSOR FOR SelectStmt
CursorStmt: DECLARE name opt_cursor CURSOR FOR SelectStmt
{
{
SelectStmt *n;
SelectStmt *n;
...
@@ -2685,7 +2680,6 @@ opt_cursor: BINARY { $$ = TRUE; }
...
@@ -2685,7 +2680,6 @@ opt_cursor: BINARY { $$ = TRUE; }
* SELECT STATEMENTS
* SELECT STATEMENTS
*
*
*****************************************************************************/
*****************************************************************************/
/***S*I***/
/* The new 'SelectStmt' rule adapted for the optional use of INTERSECT EXCEPT and UNION
/* The new 'SelectStmt' rule adapted for the optional use of INTERSECT EXCEPT and UNION
* accepts the use of '(' and ')' to select an order of set operations.
* accepts the use of '(' and ')' to select an order of set operations.
*
*
...
@@ -2770,7 +2764,6 @@ SelectStmt: select_clause sort_clause for_update_clause opt_select_limit
...
@@ -2770,7 +2764,6 @@ SelectStmt: select_clause sort_clause for_update_clause opt_select_limit
}
}
;
;
/***S*I***/
/* This rule parses Select statements including UNION INTERSECT and EXCEPT.
/* This rule parses Select statements including UNION INTERSECT and EXCEPT.
* '(' and ')' can be used to specify the order of the operations
* '(' and ')' can be used to specify the order of the operations
* (UNION EXCEPT INTERSECT). Without the use of '(' and ')' we want the
* (UNION EXCEPT INTERSECT). Without the use of '(' and ')' we want the
...
@@ -2812,7 +2805,6 @@ select_clause: '(' select_clause ')'
...
@@ -2812,7 +2805,6 @@ select_clause: '(' select_clause ')'
}
}
;
;
/***S*I***/
SubSelect: SELECT opt_unique res_target_list2
SubSelect: SELECT opt_unique res_target_list2
result from_clause where_clause
result from_clause where_clause
group_clause having_clause
group_clause having_clause
...
@@ -2821,7 +2813,6 @@ SubSelect: SELECT opt_unique res_target_list2
...
@@ -2821,7 +2813,6 @@ SubSelect: SELECT opt_unique res_target_list2
n->unique = $2;
n->unique = $2;
n->unionall = FALSE;
n->unionall = FALSE;
n->targetList = $3;
n->targetList = $3;
/***S*I***/
/* This is new: Subselects support the INTO clause
/* This is new: Subselects support the INTO clause
* which allows queries that are not part of the
* which allows queries that are not part of the
* SQL92 standard and should not be formulated!
* SQL92 standard and should not be formulated!
...
...
src/backend/parser/keywords.c
浏览文件 @
ad494886
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
*
*
*
*
* IDENTIFICATION
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/keywords.c,v 1.5
7 1999/05/12 07:22:52 thomas
Exp $
* $Header: /cvsroot/pgsql/src/backend/parser/keywords.c,v 1.5
8 1999/07/13 21:17:34 momjian
Exp $
*
*
*-------------------------------------------------------------------------
*-------------------------------------------------------------------------
*/
*/
...
@@ -92,7 +92,6 @@ static ScanKeyword ScanKeywords[] = {
...
@@ -92,7 +92,6 @@ static ScanKeyword ScanKeywords[] = {
{
"else"
,
ELSE
},
{
"else"
,
ELSE
},
{
"encoding"
,
ENCODING
},
{
"encoding"
,
ENCODING
},
{
"end"
,
END_TRANS
},
{
"end"
,
END_TRANS
},
/***S*I***/
{
"except"
,
EXCEPT
},
{
"except"
,
EXCEPT
},
{
"exclusive"
,
EXCLUSIVE
},
{
"exclusive"
,
EXCLUSIVE
},
{
"execute"
,
EXECUTE
},
{
"execute"
,
EXECUTE
},
...
@@ -123,7 +122,6 @@ static ScanKeyword ScanKeywords[] = {
...
@@ -123,7 +122,6 @@ static ScanKeyword ScanKeywords[] = {
{
"insensitive"
,
INSENSITIVE
},
{
"insensitive"
,
INSENSITIVE
},
{
"insert"
,
INSERT
},
{
"insert"
,
INSERT
},
{
"instead"
,
INSTEAD
},
{
"instead"
,
INSTEAD
},
/***S*I***/
{
"intersect"
,
INTERSECT
},
{
"intersect"
,
INTERSECT
},
{
"interval"
,
INTERVAL
},
{
"interval"
,
INTERVAL
},
{
"into"
,
INTO
},
{
"into"
,
INTO
},
...
...
src/backend/rewrite/rewriteHandler.c
浏览文件 @
ad494886
...
@@ -6,7 +6,7 @@
...
@@ -6,7 +6,7 @@
*
*
*
*
* IDENTIFICATION
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteHandler.c,v 1.4
8 1999/07/11 17:54:30 tgl
Exp $
* $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteHandler.c,v 1.4
9 1999/07/13 21:17:35 momjian
Exp $
*
*
*-------------------------------------------------------------------------
*-------------------------------------------------------------------------
*/
*/
...
@@ -24,7 +24,6 @@
...
@@ -24,7 +24,6 @@
#include "parser/parse_relation.h"
#include "parser/parse_relation.h"
#include "nodes/parsenodes.h"
#include "nodes/parsenodes.h"
/***S*I***/
#include "parser/parse_node.h"
#include "parser/parse_node.h"
#include "parser/parse_target.h"
#include "parser/parse_target.h"
...
@@ -1692,7 +1691,6 @@ apply_RIR_view(Node **nodePtr, int rt_index, RangeTblEntry *rte, List *tlist, in
...
@@ -1692,7 +1691,6 @@ apply_RIR_view(Node **nodePtr, int rt_index, RangeTblEntry *rte, List *tlist, in
modified
,
modified
,
sublevels_up
+
1
);
sublevels_up
+
1
);
/***S*I***/
tmp_lefthand
=
sub
->
lefthand
;
tmp_lefthand
=
sub
->
lefthand
;
foreach
(
tmp_oper
,
sub
->
oper
)
foreach
(
tmp_oper
,
sub
->
oper
)
{
{
...
@@ -2709,8 +2707,6 @@ QueryRewrite(Query *parsetree)
...
@@ -2709,8 +2707,6 @@ QueryRewrite(Query *parsetree)
List
*
rewritten
,
List
*
rewritten
,
*
rewritten_item
;
*
rewritten_item
;
/***S*I***/
/*
/*
* Rewrite Union, Intersect and Except Queries to normal Union Queries
* Rewrite Union, Intersect and Except Queries to normal Union Queries
* using IN and NOT IN subselects
* using IN and NOT IN subselects
...
@@ -2741,7 +2737,6 @@ QueryRewrite(Query *parsetree)
...
@@ -2741,7 +2737,6 @@ QueryRewrite(Query *parsetree)
return
rewritten
;
return
rewritten
;
}
}
/***S*I***/
/* This function takes two targetlists as arguments and checks if the
/* This function takes two targetlists as arguments and checks if the
* targetlists are compatible (i.e. both select for the same number of
* targetlists are compatible (i.e. both select for the same number of
* attributes and the types are compatible */
* attributes and the types are compatible */
...
@@ -2817,7 +2812,6 @@ check_targetlists_are_compatible(List *prev_target, List *current_target)
...
@@ -2817,7 +2812,6 @@ check_targetlists_are_compatible(List *prev_target, List *current_target)
}
}
}
}
/***S*I***/
/* Rewrites UNION INTERSECT and EXCEPT queries to semantiacally equivalent
/* Rewrites UNION INTERSECT and EXCEPT queries to semantiacally equivalent
* queries that use IN and NOT IN subselects.
* queries that use IN and NOT IN subselects.
*
*
...
...
src/backend/rewrite/rewriteManip.c
浏览文件 @
ad494886
...
@@ -6,7 +6,7 @@
...
@@ -6,7 +6,7 @@
*
*
*
*
* IDENTIFICATION
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteManip.c,v 1.3
2 1999/05/26 12:55:48
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteManip.c,v 1.3
3 1999/07/13 21:17:36
momjian Exp $
*
*
*-------------------------------------------------------------------------
*-------------------------------------------------------------------------
*/
*/
...
@@ -163,8 +163,6 @@ OffsetVarNodes(Node *node, int offset, int sublevels_up)
...
@@ -163,8 +163,6 @@ OffsetVarNodes(Node *node, int offset, int sublevels_up)
offset
,
offset
,
sublevels_up
+
1
);
sublevels_up
+
1
);
/***S*I***/
/*
/*
* Make sure the first argument of sub->oper points to the
* Make sure the first argument of sub->oper points to the
* same var as sub->lefthand does otherwise we will run
* same var as sub->lefthand does otherwise we will run
...
@@ -383,8 +381,6 @@ ChangeVarNodes(Node *node, int rt_index, int new_index, int sublevels_up)
...
@@ -383,8 +381,6 @@ ChangeVarNodes(Node *node, int rt_index, int new_index, int sublevels_up)
new_index
,
new_index
,
sublevels_up
+
1
);
sublevels_up
+
1
);
/***S*I***/
/*
/*
* Make sure the first argument of sub->oper points to the
* Make sure the first argument of sub->oper points to the
* same var as sub->lefthand does otherwise we will run
* same var as sub->lefthand does otherwise we will run
...
@@ -481,7 +477,6 @@ AddQual(Query *parsetree, Node *qual)
...
@@ -481,7 +477,6 @@ AddQual(Query *parsetree, Node *qual)
if
(
qual
==
NULL
)
if
(
qual
==
NULL
)
return
;
return
;
/***S*I***/
/* INTERSECT want's the original, but we need to copy - Jan */
/* INTERSECT want's the original, but we need to copy - Jan */
/* copy = qual; */
/* copy = qual; */
copy
=
copyObject
(
qual
);
copy
=
copyObject
(
qual
);
...
@@ -504,7 +499,6 @@ AddHavingQual(Query *parsetree, Node *havingQual)
...
@@ -504,7 +499,6 @@ AddHavingQual(Query *parsetree, Node *havingQual)
if
(
havingQual
==
NULL
)
if
(
havingQual
==
NULL
)
return
;
return
;
/***S*I***/
/* INTERSECT want's the original, but we need to copy - Jan */
/* INTERSECT want's the original, but we need to copy - Jan */
/* copy = havingQual; */
/* copy = havingQual; */
copy
=
copyObject
(
havingQual
);
copy
=
copyObject
(
havingQual
);
...
@@ -525,7 +519,6 @@ AddNotHavingQual(Query *parsetree, Node *havingQual)
...
@@ -525,7 +519,6 @@ AddNotHavingQual(Query *parsetree, Node *havingQual)
if
(
havingQual
==
NULL
)
if
(
havingQual
==
NULL
)
return
;
return
;
/***S*I***/
/* INTERSECT want's the original, but we need to copy - Jan */
/* INTERSECT want's the original, but we need to copy - Jan */
/* copy = (Node *) make_notclause((Expr *)havingQual); */
/* copy = (Node *) make_notclause((Expr *)havingQual); */
copy
=
(
Node
*
)
make_notclause
((
Expr
*
)
copyObject
(
havingQual
));
copy
=
(
Node
*
)
make_notclause
((
Expr
*
)
copyObject
(
havingQual
));
...
@@ -542,7 +535,6 @@ AddNotQual(Query *parsetree, Node *qual)
...
@@ -542,7 +535,6 @@ AddNotQual(Query *parsetree, Node *qual)
if
(
qual
==
NULL
)
if
(
qual
==
NULL
)
return
;
return
;
/***S*I***/
/* INTERSECT want's the original, but we need to copy - Jan */
/* INTERSECT want's the original, but we need to copy - Jan */
/* copy = (Node *) make_notclause((Expr *)qual); */
/* copy = (Node *) make_notclause((Expr *)qual); */
copy
=
(
Node
*
)
make_notclause
((
Expr
*
)
copyObject
(
qual
));
copy
=
(
Node
*
)
make_notclause
((
Expr
*
)
copyObject
(
qual
));
...
@@ -1098,7 +1090,6 @@ nodeHandleViewRule(Node **nodePtr,
...
@@ -1098,7 +1090,6 @@ nodeHandleViewRule(Node **nodePtr,
lfirst
(
sublink
->
lefthand
);
lfirst
(
sublink
->
lefthand
);
/***S*I***/
/* INTERSECT want's this - Jan */
/* INTERSECT want's this - Jan */
/*
/*
...
...
src/include/executor/nodeGroup.h
浏览文件 @
ad494886
...
@@ -6,7 +6,7 @@
...
@@ -6,7 +6,7 @@
*
*
* Copyright (c) 1994, Regents of the University of California
* Copyright (c) 1994, Regents of the University of California
*
*
* $Id: nodeGroup.h,v 1.1
0 1999/05/25 16:13:55
momjian Exp $
* $Id: nodeGroup.h,v 1.1
1 1999/07/13 21:17:37
momjian Exp $
*
*
*-------------------------------------------------------------------------
*-------------------------------------------------------------------------
*/
*/
...
@@ -23,7 +23,6 @@ extern int ExecCountSlotsGroup(Group *node);
...
@@ -23,7 +23,6 @@ extern int ExecCountSlotsGroup(Group *node);
extern
void
ExecEndGroup
(
Group
*
node
);
extern
void
ExecEndGroup
(
Group
*
node
);
extern
void
ExecReScanGroup
(
Group
*
node
,
ExprContext
*
exprCtxt
,
Plan
*
parent
);
extern
void
ExecReScanGroup
(
Group
*
node
,
ExprContext
*
exprCtxt
,
Plan
*
parent
);
/***S*I***/
extern
void
ExecReScanGroup
(
Group
*
node
,
ExprContext
*
exprCtxt
,
Plan
*
parent
);
extern
void
ExecReScanGroup
(
Group
*
node
,
ExprContext
*
exprCtxt
,
Plan
*
parent
);
...
...
src/include/nodes/parsenodes.h
浏览文件 @
ad494886
...
@@ -6,7 +6,7 @@
...
@@ -6,7 +6,7 @@
*
*
* Copyright (c) 1994, Regents of the University of California
* Copyright (c) 1994, Regents of the University of California
*
*
* $Id: parsenodes.h,v 1.7
4 1999/05/25 22:42:57
momjian Exp $
* $Id: parsenodes.h,v 1.7
5 1999/07/13 21:17:38
momjian Exp $
*
*
*-------------------------------------------------------------------------
*-------------------------------------------------------------------------
*/
*/
...
@@ -60,7 +60,6 @@ typedef struct Query
...
@@ -60,7 +60,6 @@ typedef struct Query
* BY */
* BY */
Node
*
havingQual
;
/* qualification of each group */
Node
*
havingQual
;
/* qualification of each group */
/***S*I***/
List
*
intersectClause
;
List
*
intersectClause
;
List
*
unionClause
;
/* unions are linked under the previous
List
*
unionClause
;
/* unions are linked under the previous
...
@@ -613,7 +612,6 @@ typedef struct InsertStmt
...
@@ -613,7 +612,6 @@ typedef struct InsertStmt
Node
*
havingClause
;
/* having conditional-expression */
Node
*
havingClause
;
/* having conditional-expression */
List
*
unionClause
;
/* union subselect parameters */
List
*
unionClause
;
/* union subselect parameters */
bool
unionall
;
/* union without unique sort */
bool
unionall
;
/* union without unique sort */
/***S*I***/
List
*
intersectClause
;
List
*
intersectClause
;
List
*
forUpdate
;
/* FOR UPDATE clause */
List
*
forUpdate
;
/* FOR UPDATE clause */
}
InsertStmt
;
}
InsertStmt
;
...
@@ -656,7 +654,6 @@ typedef struct SelectStmt
...
@@ -656,7 +654,6 @@ typedef struct SelectStmt
Node
*
whereClause
;
/* qualifications */
Node
*
whereClause
;
/* qualifications */
List
*
groupClause
;
/* group by clause */
List
*
groupClause
;
/* group by clause */
Node
*
havingClause
;
/* having conditional-expression */
Node
*
havingClause
;
/* having conditional-expression */
/***S*I***/
List
*
intersectClause
;
List
*
intersectClause
;
List
*
exceptClause
;
List
*
exceptClause
;
...
...
src/include/parser/analyze.h
浏览文件 @
ad494886
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
*
*
* Copyright (c) 1994, Regents of the University of California
* Copyright (c) 1994, Regents of the University of California
*
*
* $Id: analyze.h,v 1.
7 1999/05/25 16:14:24
momjian Exp $
* $Id: analyze.h,v 1.
8 1999/07/13 21:17:40
momjian Exp $
*
*
*-------------------------------------------------------------------------
*-------------------------------------------------------------------------
*/
*/
...
@@ -16,7 +16,6 @@
...
@@ -16,7 +16,6 @@
extern
List
*
parse_analyze
(
List
*
pl
,
ParseState
*
parentParseState
);
extern
List
*
parse_analyze
(
List
*
pl
,
ParseState
*
parentParseState
);
/***S*I***/
extern
void
create_select_list
(
Node
*
ptr
,
List
**
select_list
,
bool
*
unionall_present
);
extern
void
create_select_list
(
Node
*
ptr
,
List
**
select_list
,
bool
*
unionall_present
);
extern
Node
*
A_Expr_to_Expr
(
Node
*
ptr
,
bool
*
intersect_present
);
extern
Node
*
A_Expr_to_Expr
(
Node
*
ptr
,
bool
*
intersect_present
);
...
...
src/include/utils/elog.h
浏览文件 @
ad494886
...
@@ -6,7 +6,7 @@
...
@@ -6,7 +6,7 @@
*
*
* Copyright (c) 1994, Regents of the University of California
* Copyright (c) 1994, Regents of the University of California
*
*
* $Id: elog.h,v 1.1
0 1999/02/13 23:22:18
momjian Exp $
* $Id: elog.h,v 1.1
1 1999/07/13 21:17:42
momjian Exp $
*
*
*-------------------------------------------------------------------------
*-------------------------------------------------------------------------
*/
*/
...
@@ -29,7 +29,6 @@
...
@@ -29,7 +29,6 @@
#define ABORTX 0x4000
/* abort process after logging */
#define ABORTX 0x4000
/* abort process after logging */
#endif
#endif
/***S*I***/
/* Increase this to be able to use postmaster -d 3 with complex
/* Increase this to be able to use postmaster -d 3 with complex
* view definitions (which are transformed to very, very large INSERT statements
* view definitions (which are transformed to very, very large INSERT statements
* and if -d 3 is used the query string of these statements is printed using
* and if -d 3 is used the query string of these statements is printed using
...
...
src/interfaces/ecpg/preproc/keywords.c
浏览文件 @
ad494886
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
*
*
*
*
* IDENTIFICATION
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/keywords.c,v 1.1
3 1999/04/26 05:28:47 meskes
Exp $
* $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/keywords.c,v 1.1
4 1999/07/13 21:17:44 momjian
Exp $
*
*
*-------------------------------------------------------------------------
*-------------------------------------------------------------------------
*/
*/
...
@@ -91,7 +91,6 @@ static ScanKeyword ScanKeywords[] = {
...
@@ -91,7 +91,6 @@ static ScanKeyword ScanKeywords[] = {
{
"else"
,
ELSE
},
{
"else"
,
ELSE
},
{
"encoding"
,
ENCODING
},
{
"encoding"
,
ENCODING
},
{
"end"
,
END_TRANS
},
{
"end"
,
END_TRANS
},
/***S*I***/
{
"except"
,
EXCEPT
},
{
"except"
,
EXCEPT
},
{
"execute"
,
EXECUTE
},
{
"execute"
,
EXECUTE
},
...
@@ -121,7 +120,6 @@ static ScanKeyword ScanKeywords[] = {
...
@@ -121,7 +120,6 @@ static ScanKeyword ScanKeywords[] = {
{
"insensitive"
,
INSENSITIVE
},
{
"insensitive"
,
INSENSITIVE
},
{
"insert"
,
INSERT
},
{
"insert"
,
INSERT
},
{
"instead"
,
INSTEAD
},
{
"instead"
,
INSTEAD
},
/***S*I***/
{
"intersect"
,
INTERSECT
},
{
"intersect"
,
INTERSECT
},
{
"interval"
,
INTERVAL
},
{
"interval"
,
INTERVAL
},
...
...
src/interfaces/ecpg/preproc/preproc.y
浏览文件 @
ad494886
...
@@ -2622,7 +2622,6 @@ OptimizableStmt: SelectStmt
...
@@ -2622,7 +2622,6 @@ OptimizableStmt: SelectStmt
*
*
*****************************************************************************/
*****************************************************************************/
/***S*I***/
/* This rule used 'opt_column_list' between 'relation_name' and 'insert_rest'
/* This rule used 'opt_column_list' between 'relation_name' and 'insert_rest'
* originally. When the second rule of 'insert_rest' was changed to use
* originally. When the second rule of 'insert_rest' was changed to use
* the new 'SelectStmt' rule (for INTERSECT and EXCEPT) it produced a shift/red uce
* the new 'SelectStmt' rule (for INTERSECT and EXCEPT) it produced a shift/red uce
...
@@ -2778,7 +2777,6 @@ opt_cursor: BINARY { $$ = make1_str("binary"); }
...
@@ -2778,7 +2777,6 @@ opt_cursor: BINARY { $$ = make1_str("binary"); }
*
*
*****************************************************************************/
*****************************************************************************/
/***S*I***/
/* The new 'SelectStmt' rule adapted for the optional use of INTERSECT EXCEPT a nd UNION
/* The new 'SelectStmt' rule adapted for the optional use of INTERSECT EXCEPT a nd UNION
* accepts the use of '(' and ')' to select an order of set operations.
* accepts the use of '(' and ')' to select an order of set operations.
* The rule returns a SelectStmt Node having the set operations attached to
* The rule returns a SelectStmt Node having the set operations attached to
...
@@ -2794,7 +2792,6 @@ SelectStmt: select_clause sort_clause for_update_clause opt_select_limit
...
@@ -2794,7 +2792,6 @@ SelectStmt: select_clause sort_clause for_update_clause opt_select_limit
$$ = cat4_str($1, $2, $3, $4);
$$ = cat4_str($1, $2, $3, $4);
}
}
/***S*I***/
/* This rule parses Select statements including UNION INTERSECT and EXCEPT.
/* This rule parses Select statements including UNION INTERSECT and EXCEPT.
* '(' and ')' can be used to specify the order of the operations
* '(' and ')' can be used to specify the order of the operations
* (UNION EXCEPT INTERSECT). Without the use of '(' and ')' we want the
* (UNION EXCEPT INTERSECT). Without the use of '(' and ')' we want the
...
@@ -2827,7 +2824,6 @@ select_clause: '(' select_clause ')'
...
@@ -2827,7 +2824,6 @@ select_clause: '(' select_clause ')'
}
}
;
;
/***S*I***/
SubSelect: SELECT opt_unique res_target_list2
SubSelect: SELECT opt_unique res_target_list2
result from_clause where_clause
result from_clause where_clause
group_clause having_clause
group_clause having_clause
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录