pub enum SubqueryKind {
InSubquery,
NotInSubquery,
Exists,
NotExists,
Scalar,
}Expand description
Classification of a subquery occurrence detected in a SQL statement.
Variants§
InSubquery
expr IN (SELECT ...) — rewritten by DataFusion to a left-semi join.
NotInSubquery
expr NOT IN (SELECT ...) — rewritten to a left-anti join.
Exists
EXISTS (SELECT ...) — rewritten to a left-semi join.
NotExists
NOT EXISTS (SELECT ...) — rewritten to a left-anti join.
Scalar
(SELECT single_value) used as a scalar expression — rewritten to an
apply/cross-join with a LIMIT 1 inner query.
Trait Implementations§
Source§impl Clone for SubqueryKind
impl Clone for SubqueryKind
Source§fn clone(&self) -> SubqueryKind
fn clone(&self) -> SubqueryKind
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 SubqueryKind
impl Debug for SubqueryKind
impl Eq for SubqueryKind
Source§impl PartialEq for SubqueryKind
impl PartialEq for SubqueryKind
Source§fn eq(&self, other: &SubqueryKind) -> bool
fn eq(&self, other: &SubqueryKind) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for SubqueryKind
Auto Trait Implementations§
impl Freeze for SubqueryKind
impl RefUnwindSafe for SubqueryKind
impl Send for SubqueryKind
impl Sync for SubqueryKind
impl Unpin for SubqueryKind
impl UnsafeUnpin for SubqueryKind
impl UnwindSafe for SubqueryKind
Blanket Implementations§
impl<T> Allocation for T
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request