Crate datafusion_expr

source ·
Expand description

DataFusion is an extensible query execution framework that uses Apache Arrow as its in-memory format.

This crate is a submodule of DataFusion that provides types representing logical query plans (LogicalPlan) and logical expressions (Expr) as well as utilities for working with these types.

The expr_fn module contains functions for creating expressions.

Re-exports§

Modules§

Macros§

Structs§

Enums§

Constants§

  • Constant that is used as a placeholder for any valid timezone. This is used where a function can accept a timestamp type with any valid timezone, it exists to avoid the need to enumerate all possible timezones. See TypeSignature for more details.

Traits§

  • Tracks an aggregate function’s state.
  • Trait for implementing AggregateUDF.
  • Trait for converting a type to a Literal literal expression.
  • Partition evaluator for Window Functions
  • Trait for implementing ScalarUDF.
  • The TableSource trait is used during logical query planning and optimizations and provides access to schema information and filter push-down capabilities. This trait provides a subset of the functionality of the TableProvider trait in the core datafusion crate. The TableProvider trait provides additional capabilities needed for physical query execution (such as the ability to perform a scan). The reason for having two separate traits is to avoid having the logical plan code be dependent on the DataFusion execution engine. Other projects may want to use DataFusion’s logical plans and have their own execution engine.
  • Trait for converting a type to a literal timestamp
  • Trait for implementing WindowUDF.

Functions§

Type Aliases§

  • Monotonicity of the ScalarFunctionExpr with respect to its arguments. Each element of this vector corresponds to an argument and indicates whether the function’s behavior is monotonic, or non-monotonic/unknown for that argument, namely: