pub struct Pushdown {
pub sql: String,
pub order_table: Option<String>,
pub join_left: Option<(String, Vec<String>)>,
}Expand description
A pushdown plan: SQL whose execution is provably identical to
the Quarb query’s — plus the table whose primary key must order
the rows (None for a single aggregate row, where order is
moot). The driver appends the ORDER BY, since the key lives in
its catalog.
Fields§
§sql: String§order_table: Option<String>§join_left: Option<(String, Vec<String>)>Present when the plan contains a witness JOIN: the left table and the left-side columns its ON equalities bind. The plan is only sound if those columns form a unique key of the left table (else SQL multiplies rows where Quarb’s existential binding does not) — the driver must verify against its catalog before executing, and fall back to the scan if it cannot.
Auto Trait Implementations§
impl Freeze for Pushdown
impl RefUnwindSafe for Pushdown
impl Send for Pushdown
impl Sync for Pushdown
impl Unpin for Pushdown
impl UnsafeUnpin for Pushdown
impl UnwindSafe for Pushdown
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