Module sql::plan[][src]

SQL planning.

SQL planning is the process of taking the abstract syntax tree of a Statement and turning it into a Plan that the dataflow layer can execute.

Statements must be purified before they can be planned. See the pure module for details.

Structs

Aug
Explanation

An Explanation facilitates pretty-printing of a HirRelationExpr.

Index
Params

A vector of values to which parameter references should be bound.

PlanContext

Controls planning of a SQL query.

QueryContext

The state required when planning a Query.

Sink
Source
StatementContext

Immutable state that applies to the planning of an entire Statement.

StatementDesc

Describes the output of a SQL statement.

Table
Type
View

Enums

CopyFormat
ExecuteTimeout
HirRelationExpr

Just like MirRelationExpr, except where otherwise noted below.

IndexOption
IndexOptionName
MutationKind
PeekWhen

Specifies when a Peek should occur.

Plan

Instructions for executing a SQL query.

PlanError
QueryLifetime

Specifies how long a query will live. This impacts whether the query is allowed to reason about the time at which it is running, e.g., by calling the now() function.

TypeInner

Functions

describe

Creates a description of the purified statement stmt.

plan

Produces a Plan from the purified statement stmt.

plan_default_expr
resolve_names
resolve_names_data_type
scalar_type_from_sql
unwrap_numeric_typ_mod

Returns the first two values provided as typ_mods as u8, which are appropriate values to associate with ScalarType::Decimal's values, precision and scale.