Trait diesel::prelude::PgTextExpressionMethods

source ·
pub trait PgTextExpressionMethods: Expression + Sized {
    // Provided methods
    fn ilike<T>(self, other: T) -> ILike<Self, T>
       where T: AsExpression<Text> { ... }
    fn not_ilike<T>(self, other: T) -> NotILike<Self, T>
       where T: AsExpression<Text> { ... }
    fn similar_to<T>(self, other: T) -> SimilarTo<Self, T>
       where T: AsExpression<Text> { ... }
    fn not_similar_to<T>(self, other: T) -> NotSimilarTo<Self, T>
       where T: AsExpression<Text> { ... }
}
Expand description

PostgreSQL specific methods present on text expressions.

Provided Methods§

source

fn ilike<T>(self, other: T) -> ILike<Self, T>
where T: AsExpression<Text>,

Creates a PostgreSQL ILIKE expression

§Example
let starts_with_s = animals
    .select(species)
    .filter(name.ilike("s%").or(species.ilike("s%")))
    .get_results::<String>(connection)?;
assert_eq!(vec!["spider"], starts_with_s);
source

fn not_ilike<T>(self, other: T) -> NotILike<Self, T>
where T: AsExpression<Text>,

Creates a PostgreSQL NOT ILIKE expression

§Example
let doesnt_start_with_s = animals
    .select(species)
    .filter(name.not_ilike("s%").and(species.not_ilike("s%")))
    .get_results::<String>(connection)?;
assert_eq!(vec!["dog"], doesnt_start_with_s);
source

fn similar_to<T>(self, other: T) -> SimilarTo<Self, T>
where T: AsExpression<Text>,

Creates a PostgreSQL SIMILAR TO expression

§Example
let starts_with_s = animals
    .select(species)
    .filter(name.similar_to("s%").or(species.similar_to("s%")))
    .get_results::<String>(connection)?;
assert_eq!(vec!["spider"], starts_with_s);
source

fn not_similar_to<T>(self, other: T) -> NotSimilarTo<Self, T>
where T: AsExpression<Text>,

Creates a PostgreSQL NOT SIMILAR TO expression

§Example
let doesnt_start_with_s = animals
    .select(species)
    .filter(name.not_similar_to("s%").and(species.not_similar_to("s%")))
    .get_results::<String>(connection)?;
assert_eq!(vec!["dog"], doesnt_start_with_s);

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<T> PgTextExpressionMethods for T
where T: Expression, T::SqlType: TextOrNullableText,