PostgreSQL Source Code git master
|
#include <parsenodes.h>
Public Member Functions | |
QuerySource querySource | pg_node_attr (query_jumble_ignore) |
uint64 queryId | pg_node_attr (equal_ignore, query_jumble_ignore, read_write_ignore, read_as(0)) |
bool canSetTag | pg_node_attr (query_jumble_ignore) |
int resultRelation | pg_node_attr (query_jumble_ignore) |
bool hasAggs | pg_node_attr (query_jumble_ignore) |
bool hasWindowFuncs | pg_node_attr (query_jumble_ignore) |
bool hasTargetSRFs | pg_node_attr (query_jumble_ignore) |
bool hasSubLinks | pg_node_attr (query_jumble_ignore) |
bool hasDistinctOn | pg_node_attr (query_jumble_ignore) |
bool hasRecursive | pg_node_attr (query_jumble_ignore) |
bool hasModifyingCTE | pg_node_attr (query_jumble_ignore) |
bool hasForUpdate | pg_node_attr (query_jumble_ignore) |
bool hasRowSecurity | pg_node_attr (query_jumble_ignore) |
bool hasGroupRTE | pg_node_attr (query_jumble_ignore) |
bool isReturn | pg_node_attr (query_jumble_ignore) |
List *rteperminfos | pg_node_attr (query_jumble_ignore) |
int mergeTargetRelation | pg_node_attr (query_jumble_ignore) |
OverridingKind override | pg_node_attr (query_jumble_ignore) |
List *constraintDeps | pg_node_attr (query_jumble_ignore) |
List *withCheckOptions | pg_node_attr (query_jumble_ignore) |
ParseLoc stmt_len | pg_node_attr (query_jumble_ignore) |
Data Fields | |
NodeTag | type |
CmdType | commandType |
Node * | utilityStmt |
List * | cteList |
List * | rtable |
FromExpr * | jointree |
List * | mergeActionList |
Node * | mergeJoinCondition |
List * | targetList |
OnConflictExpr * | onConflict |
List * | returningList |
List * | groupClause |
bool | groupDistinct |
List * | groupingSets |
Node * | havingQual |
List * | windowClause |
List * | distinctClause |
List * | sortClause |
Node * | limitOffset |
Node * | limitCount |
LimitOption | limitOption |
List * | rowMarks |
Node * | setOperations |
ParseLoc | stmt_location |
Definition at line 117 of file parsenodes.h.
uint64 queryId Query::pg_node_attr | ( | equal_ignore | , |
query_jumble_ignore | , | ||
read_write_ignore | , | ||
read_as(0) | |||
) |
QuerySource querySource Query::pg_node_attr | ( | query_jumble_ignore | ) |
bool canSetTag Query::pg_node_attr | ( | query_jumble_ignore | ) |
int resultRelation Query::pg_node_attr | ( | query_jumble_ignore | ) |
bool hasAggs Query::pg_node_attr | ( | query_jumble_ignore | ) |
bool hasWindowFuncs Query::pg_node_attr | ( | query_jumble_ignore | ) |
bool hasTargetSRFs Query::pg_node_attr | ( | query_jumble_ignore | ) |
bool hasSubLinks Query::pg_node_attr | ( | query_jumble_ignore | ) |
bool hasDistinctOn Query::pg_node_attr | ( | query_jumble_ignore | ) |
bool hasRecursive Query::pg_node_attr | ( | query_jumble_ignore | ) |
bool hasModifyingCTE Query::pg_node_attr | ( | query_jumble_ignore | ) |
bool hasForUpdate Query::pg_node_attr | ( | query_jumble_ignore | ) |
bool hasRowSecurity Query::pg_node_attr | ( | query_jumble_ignore | ) |
bool hasGroupRTE Query::pg_node_attr | ( | query_jumble_ignore | ) |
bool isReturn Query::pg_node_attr | ( | query_jumble_ignore | ) |
List *rteperminfos Query::pg_node_attr | ( | query_jumble_ignore | ) |
int mergeTargetRelation Query::pg_node_attr | ( | query_jumble_ignore | ) |
OverridingKind override Query::pg_node_attr | ( | query_jumble_ignore | ) |
List *constraintDeps Query::pg_node_attr | ( | query_jumble_ignore | ) |
List *withCheckOptions Query::pg_node_attr | ( | query_jumble_ignore | ) |
ParseLoc stmt_len Query::pg_node_attr | ( | query_jumble_ignore | ) |
CmdType Query::commandType |
Definition at line 121 of file parsenodes.h.
Referenced by AcquirePlannerLocks(), AddQual(), addRangeTableEntryForCTE(), analyzeCTE(), ApplyRetrieveRule(), BeginCopyTo(), CachedPlanAllowsSimpleValidityCheck(), check_sql_fn_retval(), check_sql_fn_statements(), ChoosePortalStrategy(), contain_dml_walker(), DefineQueryRewrite(), DefineView(), exec_is_simple_query(), ExecCreateTableAs(), ExplainOneQuery(), extract_query_dependencies_walker(), FetchStatementTargetList(), find_expr_references_walker(), fireRules(), get_query_def(), getInsertSelectQuery(), init_execution_state(), interpret_AS_clause(), is_simple_subquery(), is_simple_union_all(), make_viewdef(), matchLocks(), PerformCursorOpen(), pg_plan_queries(), pg_rewrite_query(), plan_cluster_use_sort(), plan_create_index_workers(), QueryRewrite(), RewriteQuery(), rewriteRuleAction(), rewriteSearchAndCycle(), rewriteTargetView(), rewriteValuesRTE(), ScanQueryForLocks(), simplify_EXISTS_query(), transformCallStmt(), transformCreateTableAsStmt(), transformDeclareCursorStmt(), transformDeleteStmt(), transformExplainStmt(), transformInsertStmt(), transformMergeStmt(), transformPLAssignStmt(), transformRangeSubselect(), transformReturnStmt(), transformRuleStmt(), transformSelectStmt(), transformSetOperationStmt(), transformStmt(), transformSubLink(), transformUpdateStmt(), transformValuesClause(), and UtilityContainsQuery().
List* Query::cteList |
Definition at line 168 of file parsenodes.h.
Referenced by AcquireRewriteLocks(), CachedPlanAllowsSimpleValidityCheck(), convert_EXISTS_sublink_to_join(), create_ctescan_plan(), examine_simple_variable(), exec_is_simple_query(), fireRIRrules(), get_setop_query(), get_with_clause(), is_simple_subquery(), is_simple_union_all(), pull_up_simple_subquery(), query_tree_mutator_impl(), query_tree_walker_impl(), RewriteQuery(), rewriteRuleAction(), ScanQueryForLocks(), set_cte_pathlist(), set_deparse_for_query(), setRuleCheckAsUser_Query(), transformDeleteStmt(), transformInsertStmt(), transformMergeStmt(), transformRuleStmt(), transformSelectStmt(), transformSetOperationStmt(), transformUpdateStmt(), transformValuesClause(), and view_query_is_auto_updatable().
List* Query::distinctClause |
Definition at line 211 of file parsenodes.h.
Referenced by build_setop_child_paths(), check_output_expressions(), CheckSelectLocking(), examine_simple_variable(), exec_is_simple_query(), get_basic_select_query(), is_simple_subquery(), query_is_distinct_for(), query_supports_distinctness(), query_tree_mutator_impl(), query_tree_walker_impl(), remove_unused_subquery_outputs(), simplify_EXISTS_query(), subquery_is_pushdown_safe(), transformDeleteStmt(), transformPLAssignStmt(), transformSelectStmt(), and view_query_is_auto_updatable().
List* Query::groupClause |
Definition at line 202 of file parsenodes.h.
Referenced by appendGroupByClause(), build_setop_child_paths(), CheckSelectLocking(), examine_simple_variable(), exec_is_simple_query(), foreign_grouping_ok(), get_basic_select_query(), is_simple_subquery(), parseCheckAggregates(), query_is_distinct_for(), query_supports_distinctness(), query_tree_mutator_impl(), query_tree_walker_impl(), simplify_EXISTS_query(), subquery_is_pushdown_safe(), subquery_push_qual(), transformPLAssignStmt(), transformSelectStmt(), transformSetOperationStmt(), and view_query_is_auto_updatable().
bool Query::groupDistinct |
Definition at line 203 of file parsenodes.h.
Referenced by get_basic_select_query(), parseCheckAggregates(), and transformSelectStmt().
List* Query::groupingSets |
Definition at line 205 of file parsenodes.h.
Referenced by appendGroupByClause(), build_setop_child_paths(), CheckSelectLocking(), examine_simple_variable(), exec_is_simple_query(), foreign_grouping_ok(), get_basic_select_query(), is_simple_subquery(), parseCheckAggregates(), query_is_distinct_for(), query_supports_distinctness(), simplify_EXISTS_query(), subquery_is_pushdown_safe(), subquery_push_qual(), transformPLAssignStmt(), transformSelectStmt(), transformSetOperationStmt(), and view_query_is_auto_updatable().
Node* Query::havingQual |
Definition at line 207 of file parsenodes.h.
Referenced by CheckSelectLocking(), exec_is_simple_query(), get_basic_select_query(), get_query_def(), is_simple_subquery(), parseCheckAggregates(), query_is_distinct_for(), query_supports_distinctness(), query_tree_mutator_impl(), query_tree_walker_impl(), simplify_EXISTS_query(), subquery_push_qual(), transformPLAssignStmt(), transformSelectStmt(), transformSetOperationStmt(), and view_query_is_auto_updatable().
FromExpr* Query::jointree |
Definition at line 177 of file parsenodes.h.
Referenced by AddQual(), adjustJoinTreeList(), ApplyRetrieveRule(), check_sql_fn_retval(), convert_EXISTS_sublink_to_join(), convert_EXISTS_to_ANY(), exec_is_simple_query(), get_basic_select_query(), get_delete_query_def(), get_from_clause(), get_relids_for_join(), get_update_query_def(), getInsertSelectQuery(), is_safe_append_member(), is_simple_subquery(), markQueryForLocking(), pull_up_simple_subquery(), query_tree_mutator_impl(), query_tree_walker_impl(), relation_is_updatable(), RewriteQuery(), rewriteRuleAction(), rewriteSearchAndCycle(), rewriteTargetView(), set_deparse_for_query(), subquery_push_qual(), transformDeleteStmt(), transformMergeStmt(), transformPLAssignStmt(), transformReturnStmt(), transformRuleStmt(), transformSelectStmt(), transformSetOperationStmt(), transformUpdateStmt(), transformValuesClause(), view_cols_are_auto_updatable(), and view_query_is_auto_updatable().
Node* Query::limitCount |
Definition at line 216 of file parsenodes.h.
Referenced by create_minmaxagg_plan(), exec_is_simple_query(), get_select_query_def(), get_setop_query(), is_simple_subquery(), is_simple_union_all(), query_tree_mutator_impl(), query_tree_walker_impl(), simplify_EXISTS_query(), subquery_is_pushdown_safe(), transformPLAssignStmt(), transformSelectStmt(), transformSetOperationStmt(), transformValuesClause(), and view_query_is_auto_updatable().
Node* Query::limitOffset |
Definition at line 215 of file parsenodes.h.
Referenced by create_minmaxagg_plan(), exec_is_simple_query(), get_select_query_def(), get_setop_query(), is_simple_subquery(), is_simple_union_all(), query_tree_mutator_impl(), query_tree_walker_impl(), simplify_EXISTS_query(), subquery_is_pushdown_safe(), transformPLAssignStmt(), transformSelectStmt(), transformSetOperationStmt(), transformValuesClause(), and view_query_is_auto_updatable().
LimitOption Query::limitOption |
Definition at line 217 of file parsenodes.h.
Referenced by create_minmaxagg_plan(), get_select_query_def(), transformPLAssignStmt(), transformSelectStmt(), transformSetOperationStmt(), and transformValuesClause().
List* Query::mergeActionList |
Definition at line 180 of file parsenodes.h.
Referenced by get_merge_query_def(), query_tree_mutator_impl(), query_tree_walker_impl(), RewriteQuery(), rewriteTargetView(), and transformMergeStmt().
Node* Query::mergeJoinCondition |
Definition at line 191 of file parsenodes.h.
Referenced by get_merge_query_def(), query_tree_mutator_impl(), query_tree_walker_impl(), and transformMergeStmt().
OnConflictExpr* Query::onConflict |
Definition at line 198 of file parsenodes.h.
Referenced by ChangeVarNodes(), fireRIRrules(), get_insert_query_def(), OffsetVarNodes(), query_tree_mutator_impl(), query_tree_walker_impl(), RewriteQuery(), and rewriteTargetView().
List* Query::returningList |
Definition at line 200 of file parsenodes.h.
Referenced by addRangeTableEntryForCTE(), ApplyRetrieveRule(), BeginCopyTo(), ChoosePortalStrategy(), DefineQueryRewrite(), examine_simple_variable(), FetchStatementTargetList(), get_delete_query_def(), get_insert_query_def(), get_merge_query_def(), get_update_query_def(), PlanCacheComputeResultDesc(), query_tree_mutator_impl(), query_tree_walker_impl(), RewriteQuery(), rewriteRuleAction(), transformDeleteStmt(), transformMergeStmt(), and transformUpdateStmt().
List* Query::rowMarks |
Definition at line 219 of file parsenodes.h.
Referenced by applyLockingClause(), ChangeVarNodes(), contain_dml_walker(), get_parse_rowmark(), get_select_query_def(), get_setop_query(), is_simple_union_all(), max_parallel_hazard_walker(), OffsetVarNodes(), pull_up_simple_subquery(), simplify_EXISTS_query(), and transformDeclareCursorStmt().
List* Query::rtable |
Definition at line 170 of file parsenodes.h.
Referenced by AcquireRewriteLocks(), alias_relid_set(), ApplyRetrieveRule(), CachedPlanAllowsSimpleValidityCheck(), check_sql_fn_retval(), convert_EXISTS_sublink_to_join(), CopyAndAddInvertedQual(), currtid_for_view(), exec_is_simple_query(), expandRecordVariable(), extract_query_dependencies_walker(), find_expr_references_walker(), fireRIRrules(), get_delete_query_def(), get_from_clause(), get_from_clause_item(), get_insert_query_def(), get_merge_query_def(), get_query_def(), get_setop_query(), get_simple_values_rte(), get_update_query_def(), getInsertSelectQuery(), InsertRule(), is_simple_union_all_recurse(), isQueryUsingTempRelation_walker(), LockViewRecurse_walker(), make_ruledef(), markQueryForLocking(), parseCheckAggregates(), plan_cluster_use_sort(), plan_create_index_workers(), pull_up_simple_subquery(), pull_up_simple_union_all(), query_tree_mutator_impl(), query_tree_walker_impl(), recurse_push_qual(), recurse_pushdown_safe(), relation_is_updatable(), RewriteQuery(), rewriteRuleAction(), rewriteSearchAndCycle(), rewriteTargetView(), ScanQueryForLocks(), set_deparse_for_query(), setRuleCheckAsUser_Query(), simplify_EXISTS_query(), transformDeleteStmt(), transformLockingClause(), transformMergeStmt(), transformPLAssignStmt(), transformReturnStmt(), transformRuleStmt(), transformSelectStmt(), transformSetOperationStmt(), transformUpdateStmt(), transformValuesClause(), and view_query_is_auto_updatable().
Node* Query::setOperations |
Definition at line 221 of file parsenodes.h.
Referenced by AddQual(), analyzeCTE(), CheckSelectLocking(), examine_simple_variable(), exec_is_simple_query(), get_select_query_def(), get_setop_query(), is_simple_subquery(), is_simple_union_all(), pull_up_simple_union_all(), query_is_distinct_for(), query_supports_distinctness(), query_tree_mutator_impl(), query_tree_walker_impl(), remove_unused_subquery_outputs(), rewriteRuleAction(), rewriteSearchAndCycle(), set_subquery_size_estimates(), simplify_EXISTS_query(), subquery_is_pushdown_safe(), subquery_push_qual(), transformRuleStmt(), transformSetOperationStmt(), and view_query_is_auto_updatable().
List* Query::sortClause |
Definition at line 213 of file parsenodes.h.
Referenced by exec_is_simple_query(), get_select_query_def(), get_setop_query(), is_simple_subquery(), is_simple_union_all(), query_tree_mutator_impl(), query_tree_walker_impl(), simplify_EXISTS_query(), transformPLAssignStmt(), transformSelectStmt(), transformSetOperationStmt(), and transformValuesClause().
ParseLoc Query::stmt_location |
Definition at line 240 of file parsenodes.h.
Referenced by init_execution_state(), pg_plan_queries(), pgss_post_parse_analyze(), and setQueryLocationAndLength().
List* Query::targetList |
Definition at line 193 of file parsenodes.h.
Referenced by addRangeTableEntryForSubquery(), ApplyRetrieveRule(), assign_collations_walker(), build_physical_tlist(), build_setop_child_paths(), check_and_push_window_quals(), check_output_expressions(), check_sql_fn_retval(), convert_ANY_sublink_to_join(), convert_EXISTS_to_ANY(), CopyAndAddInvertedQual(), count_rowexpr_columns(), currtid_for_view(), DefineQueryRewrite(), DefineView(), determineRecursiveColTypes(), examine_simple_variable(), exec_is_simple_query(), ExecCreateTableAs(), expandRecordVariable(), expandRTE(), exprCollation(), exprSetCollation(), exprType(), exprTypmod(), FetchStatementTargetList(), FigureColnameInternal(), find_expr_references_walker(), get_basic_select_query(), get_insert_query_def(), get_name_for_var_field(), get_query_def(), get_rule_windowclause(), get_select_query_def(), get_simple_values_rte(), get_update_query_def(), is_simple_subquery(), is_simple_union_all_recurse(), make_setop_translation_list(), markTargetListOrigin(), parseCheckAggregates(), plan_set_operations(), PlanCacheComputeResultDesc(), pull_up_simple_subquery(), query_is_distinct_for(), query_tree_mutator_impl(), query_tree_walker_impl(), relation_is_updatable(), remove_unused_subquery_outputs(), RewriteQuery(), rewriteRuleAction(), rewriteSearchAndCycle(), rewriteTargetView(), rewriteValuesRTE(), set_subquery_pathlist(), set_subquery_size_estimates(), simplify_EXISTS_query(), subquery_is_pushdown_safe(), subquery_push_qual(), transformInsertStmt(), transformJsonArrayQueryConstructor(), transformMergeStmt(), transformMultiAssignRef(), transformPLAssignStmt(), transformReturnStmt(), transformSelectStmt(), transformSetOperationStmt(), transformSetOperationTree(), transformSubLink(), transformUpdateStmt(), transformValuesClause(), view_cols_are_auto_updatable(), and view_query_is_auto_updatable().
NodeTag Query::type |
Definition at line 119 of file parsenodes.h.
Node* Query::utilityStmt |
Definition at line 136 of file parsenodes.h.
Referenced by AcquirePlannerLocks(), AddQual(), analyzeCTE(), BeginCopyTo(), check_sql_fn_statements(), ChoosePortalStrategy(), DefineView(), ExecCreateTableAs(), ExplainOneQuery(), extract_query_dependencies_walker(), FetchStatementTargetList(), get_utility_query_def(), init_execution_state(), interpret_AS_clause(), JumbleQuery(), pg_plan_queries(), pgss_post_parse_analyze(), PlanCacheComputeResultDesc(), transformCallStmt(), transformCreateTableAsStmt(), transformDeclareCursorStmt(), transformExplainStmt(), transformStmt(), and UtilityContainsQuery().
List* Query::windowClause |
Definition at line 209 of file parsenodes.h.
Referenced by exec_is_simple_query(), find_window_run_conditions(), get_basic_select_query(), get_rule_windowclause(), get_select_query_def(), query_tree_mutator_impl(), query_tree_walker_impl(), simplify_EXISTS_query(), targetIsInAllPartitionLists(), transformPLAssignStmt(), and transformSelectStmt().