pub enum PhysicalPlan {
TableScan {
table: String,
},
IndexScan {
table: String,
index: String,
predicate: Expr,
},
Dml {
sql: String,
},
Derived {
input: Box<PhysicalPlan>,
alias: String,
column_aliases: Vec<String>,
},
Filter {
predicate: Expr,
input: Box<PhysicalPlan>,
},
Projection {
exprs: Vec<Expr>,
input: Box<PhysicalPlan>,
},
Join {
join_type: JoinType,
algorithm: JoinAlgorithm,
left: Box<PhysicalPlan>,
right: Box<PhysicalPlan>,
on: Expr,
},
Aggregate {
group_exprs: Vec<Expr>,
aggr_exprs: Vec<Expr>,
input: Box<PhysicalPlan>,
},
Distinct {
input: Box<PhysicalPlan>,
},
TopN {
order_by: Vec<OrderByExpr>,
limit: u64,
input: Box<PhysicalPlan>,
},
Sort {
order_by: Vec<OrderByExpr>,
input: Box<PhysicalPlan>,
},
Limit {
limit: Option<u64>,
offset: Option<u64>,
input: Box<PhysicalPlan>,
},
}Variants§
TableScan
IndexScan
Dml
Derived
Filter
Projection
Join
Aggregate
Distinct
Fields
§
input: Box<PhysicalPlan>TopN
Sort
Limit
Implementations§
Source§impl PhysicalPlan
impl PhysicalPlan
pub fn node_count(&self) -> usize
Trait Implementations§
Source§impl Clone for PhysicalPlan
impl Clone for PhysicalPlan
Source§fn clone(&self) -> PhysicalPlan
fn clone(&self) -> PhysicalPlan
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 PhysicalPlan
impl RefUnwindSafe for PhysicalPlan
impl Send for PhysicalPlan
impl Sync for PhysicalPlan
impl Unpin for PhysicalPlan
impl UnwindSafe for PhysicalPlan
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