pub enum ExprKind {
Show 15 variants
Column(SqlColumnRef),
Value(SqlValue),
Arithmetic {
left: Box<Expr>,
op: NumericBinaryOp,
right: Box<Expr>,
},
Negate(Box<Expr>),
Cast {
expression: Box<Expr>,
target: NumericType,
},
CurrentTimestamp(TimestampType),
TimestampCast {
expression: Box<Expr>,
target: TimestampCast,
},
Function {
name: String,
arguments: Vec<SqlFunctionArgument>,
distinct: bool,
filter: Option<Box<Expr>>,
},
And(Box<Expr>, Box<Expr>),
Or(Box<Expr>, Box<Expr>),
Not(Box<Expr>),
Compare {
left: Box<Expr>,
op: SqlComparisonOp,
right: Box<Expr>,
},
InList {
left: Box<Expr>,
values: Vec<Expr>,
negated: bool,
},
Like {
left: Box<Expr>,
pattern: Box<Expr>,
case_insensitive: bool,
negated: bool,
escape: SqlLikeEscape,
},
IsNull {
expression: Box<Expr>,
negated: bool,
},
}Variants§
Column(SqlColumnRef)
Value(SqlValue)
Arithmetic
Negate(Box<Expr>)
Cast
CurrentTimestamp(TimestampType)
CURRENT_TIMESTAMP[(p)], now() (zoned) or LOCALTIMESTAMP[(p)]
(local). A constant bound on every execution from the pinned clock.
TimestampCast
An explicit CAST between TEXT, TIMESTAMP and TIMESTAMPTZ.
Function
And(Box<Expr>, Box<Expr>)
Or(Box<Expr>, Box<Expr>)
Not(Box<Expr>)
Compare
InList
Like
Fields
§
escape: SqlLikeEscapeIsNull
Trait Implementations§
impl Eq for ExprKind
impl StructuralPartialEq for ExprKind
Auto Trait Implementations§
impl Forget for ExprKind
impl Freeze for ExprKind
impl Move for ExprKind
impl RefUnwindSafe for ExprKind
impl Send for ExprKind
impl Sync for ExprKind
impl Unpin for ExprKind
impl UnsafeUnpin for ExprKind
impl UnwindSafe for ExprKind
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