Define JoinExpr structure for outer join syntax.
Clean up comments in execnodes.h.
This commit is contained in:
parent
70600bd6f1
commit
0a8e9c4e7f
@ -6,7 +6,7 @@
|
|||||||
*
|
*
|
||||||
* Copyright (c) 1994, Regents of the University of California
|
* Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Id: execnodes.h,v 1.24 1999/02/13 23:21:37 momjian Exp $
|
* $Id: execnodes.h,v 1.25 1999/02/23 07:55:23 thomas Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -607,7 +607,7 @@ typedef struct GroupState
|
|||||||
* SortState information
|
* SortState information
|
||||||
*
|
*
|
||||||
*| sort nodes are really just a kind of a scan since
|
*| sort nodes are really just a kind of a scan since
|
||||||
*| we implement sorts by retrieveing the entire subplan
|
*| we implement sorts by retrieving the entire subplan
|
||||||
*| into a temp relation, sorting the temp relation into
|
*| into a temp relation, sorting the temp relation into
|
||||||
*| another sorted relation, and then preforming a simple
|
*| another sorted relation, and then preforming a simple
|
||||||
*| unqualified sequential scan on the sorted relation..
|
*| unqualified sequential scan on the sorted relation..
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
*
|
*
|
||||||
* Copyright (c) 1994, Regents of the University of California
|
* Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Id: nodes.h,v 1.43 1999/02/13 23:21:38 momjian Exp $
|
* $Id: nodes.h,v 1.44 1999/02/23 07:55:24 thomas Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -215,7 +215,7 @@ typedef enum NodeTag
|
|||||||
T_SortClause,
|
T_SortClause,
|
||||||
T_GroupClause,
|
T_GroupClause,
|
||||||
T_SubSelect,
|
T_SubSelect,
|
||||||
T_JoinUsing,
|
T_JoinExpr,
|
||||||
T_CaseExpr,
|
T_CaseExpr,
|
||||||
T_CaseWhen,
|
T_CaseWhen,
|
||||||
T_RowMark
|
T_RowMark
|
||||||
|
@ -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.70 1999/02/13 23:21:39 momjian Exp $
|
* $Id: parsenodes.h,v 1.71 1999/02/23 07:55:24 thomas Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -149,7 +149,7 @@ typedef struct CreateStmt
|
|||||||
|
|
||||||
typedef enum ConstrType /* type of constaints */
|
typedef enum ConstrType /* type of constaints */
|
||||||
{
|
{
|
||||||
CONSTR_NONE, CONSTR_NOTNULL, CONSTR_DEFAULT, CONSTR_CHECK, CONSTR_PRIMARY, CONSTR_UNIQUE
|
CONSTR_NULL, CONSTR_NOTNULL, CONSTR_DEFAULT, CONSTR_CHECK, CONSTR_PRIMARY, CONSTR_UNIQUE
|
||||||
} ConstrType;
|
} ConstrType;
|
||||||
|
|
||||||
typedef struct Constraint
|
typedef struct Constraint
|
||||||
@ -671,7 +671,6 @@ typedef struct SelectStmt
|
|||||||
List *forUpdate; /* FOR UPDATE clause */
|
List *forUpdate; /* FOR UPDATE clause */
|
||||||
} SelectStmt;
|
} SelectStmt;
|
||||||
|
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Supporting data structures for Parse Trees
|
* Supporting data structures for Parse Trees
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
@ -854,17 +853,6 @@ typedef struct SortGroupBy
|
|||||||
Node *node; /* Expression */
|
Node *node; /* Expression */
|
||||||
} SortGroupBy;
|
} SortGroupBy;
|
||||||
|
|
||||||
/*
|
|
||||||
* JoinUsing - for JOIN USING clause
|
|
||||||
*/
|
|
||||||
typedef struct JoinUsing
|
|
||||||
{
|
|
||||||
NodeTag type;
|
|
||||||
int resno; /* target number */
|
|
||||||
char *range;
|
|
||||||
char *name; /* name of column to sort on */
|
|
||||||
} JoinUsing;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* RangeVar - range variable, used in FROM clauses
|
* RangeVar - range variable, used in FROM clauses
|
||||||
*/
|
*/
|
||||||
@ -898,6 +886,18 @@ typedef struct DefElem
|
|||||||
Node *arg; /* a (Value *) or a (TypeName *) */
|
Node *arg; /* a (Value *) or a (TypeName *) */
|
||||||
} DefElem;
|
} DefElem;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* JoinExpr - for JOIN expressions
|
||||||
|
*/
|
||||||
|
typedef struct JoinExpr
|
||||||
|
{
|
||||||
|
NodeTag type;
|
||||||
|
int jointype;
|
||||||
|
RangeVar *larg;
|
||||||
|
Node *rarg;
|
||||||
|
List *quals;
|
||||||
|
} JoinExpr;
|
||||||
|
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Nodes for a Query tree
|
* Nodes for a Query tree
|
||||||
|
Loading…
x
Reference in New Issue
Block a user