Struct ssql::ColExpr

source ·
pub struct ColExpr { /* private fields */ }
Expand description

Column Expression

Implementations§

source§

impl ColExpr

source

pub fn eq(self, other: &dyn ToSql) -> FilterExpr<'_>

generate filter expression checking whether this column equals to a value.

let query = Person::query().filter(
    Person::col("id")?.eq(&5)
)?;

SQL: ... WHERE person.id = 5

source

pub fn neq(self, other: &dyn ToSql) -> FilterExpr<'_>

generate filter expression checking whether this column not equals to a value.

let query = Person::query().filter(
    Person::col("id")?.neq(&5)
)?;

SQL: ... WHERE person.id <> 5

source

pub fn lt(self, other: &dyn ToSql) -> FilterExpr<'_>

generate filter expression checking whether this column is less than a value.

let query = Person::query().filter(
    Person::col("email")?.lt(&5)
)?;

SQL: ... WHERE person.id < 5

source

pub fn lt_eq(self, other: &dyn ToSql) -> FilterExpr<'_>

generate filter expression checking whether this column is less or equal than a value.

let query = Person::query().filter(
    Person::col("email")?.lt_eq(&5)
)?;

SQL: ... WHERE person.id <= 5

source

pub fn gt(self, other: &dyn ToSql) -> FilterExpr<'_>

generate filter expression checking whether this column is greater than a value.

let query = Person::query().filter(
    Person::col("email")?.gt(&5)
)?;

SQL: ... WHERE person.id > 5

source

pub fn gt_eq(self, other: &dyn ToSql) -> FilterExpr<'_>

generate filter expression checking whether this column is greater or equal than a value.

let query = Person::query().filter(
    Person::col("email")?.gt_eq(&5)
)?;

SQL: ... WHERE person.id >= 5

source

pub fn is_null<'b>(self) -> FilterExpr<'b>

generate filter expression checking whether this column is null.

let query = Person::query().filter(
    Person::col("email")?.is_null()
)?;

SQL: **... WHERE person.email IS NULL**

source

pub fn is_not_null<'b>(self) -> FilterExpr<'b>

generate filter expression checking whether this column is not null.

let query = Person::query().filter(
    Person::col("email")?.is_not_null()
)?;

SQL: ... WHERE person.email IS NOT NULL

source

pub fn contains<'b>(self, other: &'b str) -> FilterExpr<'b>

generate filter expression checking whether a char column contains a given str.

let query = Person::query().filter(
    Person::col("email")?.contains("gmail")
)?;

SQL: ... WHERE person.email LIKE '%gmail%'

source

pub fn startswith<'b>(self, other: &'b str) -> FilterExpr<'b>

generate filter expression checking whether a char column starts with a given str.

let query = Person::query().filter(
    Person::col("email")?.startswith("john")
)?;

SQL: ... WHERE person.email LIKE 'john%'

source

pub fn endswith<'b>(self, other: &'b str) -> FilterExpr<'b>

generate filter expression checking whether a char column ends with a given str.

let query = Person::query().filter(
    Person::col("email")?.endswith("gmail.com")
)?;

SQL: ... WHERE person.email LIKE '%gmail.com'

source

pub fn is_in(self, ls: &[impl ToSql]) -> FilterExpr<'_>

generate filter expression checking whether a value in a given list.

let query = Person::query().filter(
    Person::col("id")?.is_in(&[3,4,5,6,7])
)?;

SQL: ... WHERE person.id IN (3,4,5,6,7)

source

pub fn is_in_ref<'b>(self, ls: &[&'b dyn ToSql]) -> FilterExpr<'b>

generate filter expression checking whether a value in a given list. This method allows for providing different types of args.

let query = Person::query().filter(
    Person::col("email")?.is_in_ref(&[&3, &"4", &5])
)?;

SQL: ... WHERE person.id IN (3,'4',5)

source

pub fn between<'b>( self, start: &'b dyn ToSql, end: &'b dyn ToSql ) -> FilterExpr<'b>

generate filter expression checking whether a value between a range.

let query = Person::query().filter(
    Person::col("email")?.between(&3, &7)
)?;

SQL: ... WHERE person.id BETWEEN 3 AND 7

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more