#[non_exhaustive]pub enum AggregateExpression {
Count {
alias: String,
},
CountDistinct {
column: String,
alias: String,
},
MeasureAggregate {
column: String,
function: AggregateFunction,
alias: String,
},
AdvancedAggregate {
column: String,
function: AggregateFunction,
alias: String,
delimiter: Option<String>,
order_by: Option<Vec<OrderByClause>>,
},
BoolAggregate {
column: String,
function: BoolAggregateFunction,
alias: String,
},
}Expand description
Validated aggregate expression
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Count
COUNT(*)
CountDistinct
COUNT(DISTINCT field)
MeasureAggregate
Aggregate function on measure column
Fields
§
function: AggregateFunctionAggregate function
AdvancedAggregate
Advanced aggregate with optional parameters
Fields
§
function: AggregateFunctionAggregate function
§
order_by: Option<Vec<OrderByClause>>Optional ORDER BY for ARRAY_AGG/STRING_AGG
BoolAggregate
Boolean aggregate (BOOL_AND/BOOL_OR)
Trait Implementations§
Source§impl Clone for AggregateExpression
impl Clone for AggregateExpression
Source§fn clone(&self) -> AggregateExpression
fn clone(&self) -> AggregateExpression
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 moreSource§impl Debug for AggregateExpression
impl Debug for AggregateExpression
Source§impl<'de> Deserialize<'de> for AggregateExpression
impl<'de> Deserialize<'de> for AggregateExpression
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for AggregateExpression
impl PartialEq for AggregateExpression
Source§impl Serialize for AggregateExpression
impl Serialize for AggregateExpression
impl Eq for AggregateExpression
impl StructuralPartialEq for AggregateExpression
Auto Trait Implementations§
impl Freeze for AggregateExpression
impl RefUnwindSafe for AggregateExpression
impl Send for AggregateExpression
impl Sync for AggregateExpression
impl Unpin for AggregateExpression
impl UnsafeUnpin for AggregateExpression
impl UnwindSafe for AggregateExpression
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
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§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<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 more