Re-exports§
pub use builder::build_join_schema;
pub use builder::table_scan;
pub use builder::union;
pub use builder::wrap_projection_for_join_if_necessary;
pub use builder::LogicalPlanBuilder;
pub use builder::LogicalTableSource;
pub use builder::UNNAMED_TABLE;
pub use dml::DmlStatement;
pub use dml::WriteOp;
pub use display::display_schema;
Modules§
- builder
- This module provides a builder for creating LogicalPlans
- display
- This module provides logic for displaying LogicalPlans in various styles
- dml
- tree_
node TreeNode
based visiting and rewriting forLogicalPlan
s
Structs§
- Aggregate
- Aggregates its input based on a set of grouping and aggregate expressions (e.g. SUM).
- Analyze
- Runs the actual plan, and then prints the physical plan with with execution metrics.
- Column
Unnest List - Represent the unnesting operation on a list column, such as the recursion depth and the output column name after unnesting
- Create
Catalog - Creates a catalog (aka “Database”).
- Create
Catalog Schema - Creates a schema.
- Create
External Table - Creates an external table.
- Create
Function - Arguments passed to
CREATE FUNCTION
- Create
Function Body - Create
Index - Create
Memory Table - Creates an in memory table.
- Create
View - Creates a view.
- Deallocate
- Deallocate a prepared statement.
- Describe
Table - Describe the schema of table
- Distinct
On - Removes duplicate rows from the input
- Drop
Catalog Schema - Drops a schema
- Drop
Function - Drop
Table - Drops a table.
- Drop
View - Drops a view.
- Empty
Relation - Produces no rows: An empty relation with an empty schema
- Execute
- Execute a prepared statement.
- Explain
- Produces a relation with string representations of various parts of the plan
- Extension
- Extension operator defined outside of DataFusion
- Filter
- Filters rows from its input that do not match an expression (essentially a WHERE clause with a predicate expression).
- Join
- Join two logical plans on one or more join columns
- Limit
- Produces the first
n
tuples from its input and discards the rest. - Operate
Function Arg - Prepare
- Prepare a statement but do not execute it. Prepare statements can have 0 or more
Expr::Placeholder
expressions that are filled in during execution - Projection
- Evaluates an arbitrary list of expressions (essentially a SELECT with an expression list) on its input.
- Recursive
Query - A variadic query operation, Recursive CTE.
- Repartition
- SetVariable
- Set a Variable’s value – value in
ConfigOptions
- Sort
- Sorts its input according to a list of sort expressions.
- Stringified
Plan - Represents some sort of execution plan, in String form
- Subquery
- Subquery
- Subquery
Alias - Aliased subquery
- Table
Scan - Produces rows from a table provider by reference or from the context
- Transaction
End - Indicator that any current transaction should be terminated
- Transaction
Start - Indicator that the following statements should be committed or rolled back atomically
- Union
- Union multiple inputs
- Unnest
- Unnest a column that contains a nested list type. See
UnnestOptions
for more details. - Values
- Values expression. See Postgres VALUES documentation for more details.
- Window
- Window its input based on a set of window spec and window function (e.g. SUM or RANK)
Enums§
- DdlStatement
- Various types of DDL (CREATE / DROP) catalog manipulation
- Distinct
- Removes duplicate rows from the input
- Fetch
Type - Different types of fetch expression in Limit plan.
- Invariant
Level - Join
Constraint - Join constraint
- Join
Type - Join type
- Logical
Plan - A
LogicalPlan
is a node in a tree of relational operators (such as Projection or Filter). - Partitioning
- Logical partitioning schemes supported by
LogicalPlan::Repartition
- Plan
Type - Represents which type of plan, when storing multiple for use in EXPLAIN plans
- Skip
Type - Different types of skip expression in Limit plan.
- Statement
- Various types of Statements.
- Transaction
Access Mode - Indicates if this transaction is allowed to write
- Transaction
Conclusion - Indicates if a transaction was committed or aborted
- Transaction
Isolation Level - Indicates ANSI transaction isolation level
Traits§
- ToStringified
Plan - Trait for something that can be formatted as a stringified plan
- User
Defined Logical Node - This defines the interface for
LogicalPlan
nodes that can be used to extend DataFusion with custom relational operators. - User
Defined Logical Node Core - This trait facilitates implementation of the
UserDefinedLogicalNode
.
Functions§
- assert_
expected_ schema - Returns an error if the plan does not have the expected schema. Ignores metadata and nullability.
- check_
subquery_ expr - Do necessary check on subquery expressions and fail the invalid plan
- projection_
schema - Computes the schema of the result produced by applying a projection to the input logical plan.