Expand description
SqlPlan intermediate representation types.
These types represent the output of the nodedb-sql planner. Both Origin (server) and Lite (embedded) map these to their own execution model.
Re-exports§
pub use crate::types_expr::BinaryOp;pub use crate::types_expr::SqlDataType;pub use crate::types_expr::SqlExpr;pub use crate::types_expr::SqlValue;pub use crate::types_expr::UnaryOp;pub use crate::catalog::SqlCatalog;pub use crate::catalog::SqlCatalogError;
Structs§
- Aggregate
Expr - Aggregate expression:
COUNT(*),SUM(amount), etc. - Collection
Info - Metadata about a collection for query planning.
- Column
Info - Metadata about a single column.
- Filter
- A filter predicate.
- Index
Spec - Secondary index metadata surfaced to the SQL planner.
- SortKey
- Sort key for ORDER BY.
- Window
Spec - Window function specification.
Enums§
- Compare
Op - Comparison operators.
- Engine
Type - Database engine type for a collection.
- Filter
Expr - Filter expression tree.
- Index
State - Planner-facing index state. Mirrors the catalog variant but lives here
so the SQL crate doesn’t depend on
nodedbinternals. - Join
Type - SQL join type.
- KvInsert
Intent - INSERT-vs-UPSERT intent carried on
SqlPlan::KvInsert. - Projection
- Projection item in SELECT.
- Spatial
Predicate - Spatial predicate types.
- SqlPlan
- The top-level plan produced by the SQL planner.