postgresql/src/backend/parser/README

27 lines
1.2 KiB
Plaintext
Raw Normal View History

$PostgreSQL: pgsql/src/backend/parser/README,v 1.10 2008/04/09 01:00:46 momjian Exp $
Parser
2008-03-21 14:23:29 +01:00
======
1997-11-26 16:36:00 +01:00
This directory does more than tokenize and parse SQL queries. It also
creates Query structures for the various complex queries that are passed
1997-11-26 16:36:00 +01:00
to the optimizer and then executor.
parser.c things start here
scan.l break query into tokens
scansup.c handle escapes in input strings
1997-11-26 16:36:00 +01:00
keywords.c turn keywords into specific tokens
gram.y parse the tokens and fill query-type-specific structures
analyze.c top level of parse analysis for optimizable queries
1997-11-26 16:36:00 +01:00
parse_clause.c handle clauses like WHERE, ORDER BY, GROUP BY, ...
parse_coerce.c handle coercing expressions to different data types
1997-11-26 16:36:00 +01:00
parse_expr.c handle expressions like col, col + 3, x = 3 or x = 4
parse_oper.c handle operators in expressions
1997-11-26 16:36:00 +01:00
parse_agg.c handle aggregates, like SUM(col1), AVG(col2), ...
parse_func.c handle functions, table.column and column identifiers
1997-11-26 16:36:00 +01:00
parse_node.c create nodes for various structures
parse_target.c handle the result list of the query
parse_relation.c support routines for tables and column handling
parse_type.c support routines for data type handling
parse_utilcmd.c parse analysis for utility commands (done at execution time)