pub enum LogicalPlan {
Scan {
table: String,
},
IndexScan {
table: String,
index: String,
predicate: Expr,
},
Dml {
sql: String,
},
Derived {
input: Box<LogicalPlan>,
alias: String,
column_aliases: Vec<String>,
},
Filter {
predicate: Expr,
input: Box<LogicalPlan>,
},
Projection {
exprs: Vec<Expr>,
input: Box<LogicalPlan>,
},
Join {
join_type: JoinType,
left: Box<LogicalPlan>,
right: Box<LogicalPlan>,
on: Expr,
},
Aggregate {
group_exprs: Vec<Expr>,
aggr_exprs: Vec<Expr>,
input: Box<LogicalPlan>,
},
Distinct {
input: Box<LogicalPlan>,
},
TopN {
order_by: Vec<OrderByExpr>,
limit: u64,
input: Box<LogicalPlan>,
},
Sort {
order_by: Vec<OrderByExpr>,
input: Box<LogicalPlan>,
},
Limit {
limit: Option<u64>,
offset: Option<u64>,
input: Box<LogicalPlan>,
},
}Variants§
Scan
IndexScan
Dml
Derived
Filter
Projection
Join
Aggregate
Distinct
Fields
§
input: Box<LogicalPlan>TopN
Sort
Limit
Implementations§
Source§impl LogicalPlan
impl LogicalPlan
pub fn explain(&self, indent: usize) -> String
pub fn explain_formatted( &self, config: &ExplainConfig, inferencer: &dyn TypeInferencer, ) -> String
pub fn explain_typed( &self, indent: usize, inferencer: &dyn TypeInferencer, ) -> String
Trait Implementations§
Source§impl Clone for LogicalPlan
impl Clone for LogicalPlan
Source§fn clone(&self) -> LogicalPlan
fn clone(&self) -> LogicalPlan
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for LogicalPlan
impl RefUnwindSafe for LogicalPlan
impl Send for LogicalPlan
impl Sync for LogicalPlan
impl Unpin for LogicalPlan
impl UnwindSafe for LogicalPlan
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more