* SortState information
*
*| 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
*| another sorted relation, and then preforming a simple
*| unqualified sequential scan on the sorted relation..
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;
typedef struct Constraint
List *forUpdate; /* FOR UPDATE clause */
} SelectStmt;
-
/****************************************************************************
* Supporting data structures for Parse Trees
****************************************************************************/
Node *node; /* Expression */
} 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
*/
Node *arg; /* a (Value *) or a (TypeName *) */
} DefElem;
+/*
+ * JoinExpr - for JOIN expressions
+ */
+typedef struct JoinExpr
+{
+ NodeTag type;
+ int jointype;
+ RangeVar *larg;
+ Node *rarg;
+ List *quals;
+} JoinExpr;
+
/****************************************************************************
* Nodes for a Query tree