pub struct SortMergeJoin { /* private fields */ }Expand description
Sort-Merge Join executor.
Efficient for joining pre-sorted relations or when both inputs can be sorted efficiently.
Implementations§
Source§impl SortMergeJoin
impl SortMergeJoin
Sourcepub fn new(
left_key_index: usize,
right_key_index: usize,
is_outer_join: bool,
) -> Self
pub fn new( left_key_index: usize, right_key_index: usize, is_outer_join: bool, ) -> Self
Creates a new sort-merge join executor.
Sourcepub fn inner(left_key_index: usize, right_key_index: usize) -> Self
pub fn inner(left_key_index: usize, right_key_index: usize) -> Self
Creates an inner sort-merge join.
Sourcepub fn left_outer(left_key_index: usize, right_key_index: usize) -> Self
pub fn left_outer(left_key_index: usize, right_key_index: usize) -> Self
Creates a left outer sort-merge join.
Sourcepub fn execute(&self, left: Relation, right: Relation) -> Relation
pub fn execute(&self, left: Relation, right: Relation) -> Relation
Executes the sort-merge join. Assumes both inputs are already sorted by their join keys.
Sourcepub fn execute_with_sort(&self, left: Relation, right: Relation) -> Relation
pub fn execute_with_sort(&self, left: Relation, right: Relation) -> Relation
Executes the sort-merge join, sorting inputs first.
Auto Trait Implementations§
impl Freeze for SortMergeJoin
impl RefUnwindSafe for SortMergeJoin
impl Send for SortMergeJoin
impl Sync for SortMergeJoin
impl Unpin for SortMergeJoin
impl UnwindSafe for SortMergeJoin
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