Struct Function
pub struct Function {
pub name: ObjectName,
pub uses_odbc_syntax: bool,
pub parameters: FunctionArguments,
pub args: FunctionArguments,
pub filter: Option<Box<Expr>>,
pub null_treatment: Option<NullTreatment>,
pub over: Option<WindowType>,
pub within_group: Vec<OrderByExpr>,
}Expand description
A function call
Fields§
§name: ObjectName§uses_odbc_syntax: bool§parameters: FunctionArgumentsThe parameters to the function, including any options specified within the delimiting parentheses.
Example:
HISTOGRAM(0.5, 0.6)(x, y)args: FunctionArgumentsThe arguments to the function, including any options specified within the delimiting parentheses.
filter: Option<Box<Expr>>e.g. x > 5 in COUNT(x) FILTER (WHERE x > 5)
null_treatment: Option<NullTreatment>Indicates how NULLs should be handled in the calculation.
Example:
FIRST_VALUE( <expr> ) [ { IGNORE | RESPECT } NULLS ] OVER ...over: Option<WindowType>The OVER clause, indicating a window function call.
within_group: Vec<OrderByExpr>A clause used with certain aggregate functions to control the ordering within grouped sets before the function is applied.
Syntax:
<aggregate_function>(expression) WITHIN GROUP (ORDER BY key [ASC | DESC], ...)Trait Implementations§
§impl Ord for Function
impl Ord for Function
§impl PartialOrd for Function
impl PartialOrd for Function
§impl VisitMut for Function
impl VisitMut for Function
fn visit<V>(&mut self, visitor: &mut V) -> ControlFlow<<V as VisitorMut>::Break>where
V: VisitorMut,
impl Eq for Function
impl StructuralPartialEq for Function
Auto Trait Implementations§
impl Freeze for Function
impl RefUnwindSafe for Function
impl Send for Function
impl Sync for Function
impl Unpin for Function
impl UnwindSafe for Function
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,
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.