pub struct PhysicalSortExpr {
pub expr: Arc<dyn PhysicalExpr>,
pub options: SortOptions,
}Expand description
Represents Sort operation for a column in a RecordBatch
Fields§
§expr: Arc<dyn PhysicalExpr>Physical expression representing the column to sort
options: SortOptionsOption to specify how the given column should be sorted
Implementations§
source§impl PhysicalSortExpr
impl PhysicalSortExpr
sourcepub fn evaluate_to_sort_column(&self, batch: &RecordBatch) -> Result<SortColumn>
pub fn evaluate_to_sort_column(&self, batch: &RecordBatch) -> Result<SortColumn>
evaluate the sort expression into SortColumn that can be passed into arrow sort kernel
sourcepub fn satisfy(
&self,
requirement: &PhysicalSortRequirement,
schema: &Schema
) -> bool
pub fn satisfy( &self, requirement: &PhysicalSortRequirement, schema: &Schema ) -> bool
Checks whether this sort expression satisfies the given requirement.
If sort options are unspecified in requirement, only expressions are
compared for inequality.
sourcepub fn format_list(input: &[PhysicalSortExpr]) -> impl Display + '_
pub fn format_list(input: &[PhysicalSortExpr]) -> impl Display + '_
Returns a Displayable list of PhysicalSortExpr.
Trait Implementations§
source§impl Clone for PhysicalSortExpr
impl Clone for PhysicalSortExpr
source§fn clone(&self) -> PhysicalSortExpr
fn clone(&self) -> PhysicalSortExpr
Returns a copy 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 moresource§impl Debug for PhysicalSortExpr
impl Debug for PhysicalSortExpr
source§impl Display for PhysicalSortExpr
impl Display for PhysicalSortExpr
source§impl From<PhysicalSortExpr> for PhysicalSortRequirement
impl From<PhysicalSortExpr> for PhysicalSortRequirement
source§fn from(value: PhysicalSortExpr) -> Self
fn from(value: PhysicalSortExpr) -> Self
Converts to this type from the input type.
source§impl From<PhysicalSortRequirement> for PhysicalSortExpr
impl From<PhysicalSortRequirement> for PhysicalSortExpr
source§fn from(value: PhysicalSortRequirement) -> Self
fn from(value: PhysicalSortRequirement) -> Self
If options is None, the default sort options ASC, NULLS LAST is used.
The default is picked to be consistent with PostgreSQL: https://www.postgresql.org/docs/current/queries-order.html
source§impl Hash for PhysicalSortExpr
impl Hash for PhysicalSortExpr
source§impl PartialEq for PhysicalSortExpr
impl PartialEq for PhysicalSortExpr
source§fn eq(&self, other: &PhysicalSortExpr) -> bool
fn eq(&self, other: &PhysicalSortExpr) -> bool
This method tests for
self and other values to be equal, and is used
by ==.impl Eq for PhysicalSortExpr
Auto Trait Implementations§
impl !RefUnwindSafe for PhysicalSortExpr
impl Send for PhysicalSortExpr
impl Sync for PhysicalSortExpr
impl Unpin for PhysicalSortExpr
impl !UnwindSafe for PhysicalSortExpr
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
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.