1997-11-25 23:07:18 +01:00
|
|
|
/*-------------------------------------------------------------------------
|
|
|
|
*
|
|
|
|
* parse_clause.h
|
|
|
|
*
|
|
|
|
*
|
|
|
|
*
|
2000-01-26 06:58:53 +01:00
|
|
|
* Portions Copyright (c) 1996-2000, PostgreSQL, Inc
|
|
|
|
* Portions Copyright (c) 1994, Regents of the University of California
|
1997-11-25 23:07:18 +01:00
|
|
|
*
|
2000-02-15 04:38:29 +01:00
|
|
|
* $Id: parse_clause.h,v 1.16 2000/02/15 03:38:28 thomas Exp $
|
1997-11-25 23:07:18 +01:00
|
|
|
*
|
|
|
|
*-------------------------------------------------------------------------
|
|
|
|
*/
|
|
|
|
#ifndef PARSE_CLAUSE_H
|
|
|
|
#define PARSE_CLAUSE_H
|
|
|
|
|
1999-07-16 01:04:24 +02:00
|
|
|
#include "parser/parse_node.h"
|
1997-11-25 23:07:18 +01:00
|
|
|
|
2000-02-15 04:38:29 +01:00
|
|
|
extern void makeRangeTable(ParseState *pstate, List *frmList);
|
1999-07-19 02:26:20 +02:00
|
|
|
extern void setTargetTable(ParseState *pstate, char *relname);
|
2000-02-15 04:38:29 +01:00
|
|
|
extern Node *transformWhereClause(ParseState *pstate, Node *where);
|
1998-09-01 06:40:42 +02:00
|
|
|
extern List *transformGroupClause(ParseState *pstate, List *grouplist,
|
1999-08-21 05:49:17 +02:00
|
|
|
List *targetlist);
|
|
|
|
extern List *transformSortClause(ParseState *pstate, List *orderlist,
|
2000-01-27 19:11:50 +01:00
|
|
|
List *targetlist);
|
|
|
|
extern List *transformDistinctClause(ParseState *pstate, List *distinctlist,
|
|
|
|
List *targetlist, List **sortClause);
|
1999-08-21 05:49:17 +02:00
|
|
|
|
|
|
|
extern List *addAllTargetsToSortList(List *sortlist, List *targetlist);
|
|
|
|
extern Index assignSortGroupRef(TargetEntry *tle, List *tlist);
|
|
|
|
|
1998-09-01 06:40:42 +02:00
|
|
|
#endif /* PARSE_CLAUSE_H */
|