pub struct QueryBuilder { /* private fields */ }
Expand description
Main query builder for constructing WHERE clauses and other query parts
Implementations§
Trait Implementations§
Source§impl Clone for QueryBuilder
impl Clone for QueryBuilder
Source§fn clone(&self) -> QueryBuilder
fn clone(&self) -> QueryBuilder
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 QueryBuilder
impl Debug for QueryBuilder
Source§impl Default for QueryBuilder
impl Default for QueryBuilder
Source§impl<'de> Deserialize<'de> for QueryBuilder
impl<'de> Deserialize<'de> for QueryBuilder
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 HavingClauses for QueryBuilder
impl HavingClauses for QueryBuilder
Source§impl JoinMethods for QueryBuilder
impl JoinMethods for QueryBuilder
Source§fn inner_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
fn inner_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
Add an INNER JOIN clause
Source§fn left_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
fn left_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
Add a LEFT JOIN clause
Source§fn right_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
fn right_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
Add a RIGHT JOIN clause
Source§fn left_outer_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
fn left_outer_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
Add a LEFT OUTER JOIN clause
Source§fn right_outer_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
fn right_outer_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
Add a RIGHT OUTER JOIN clause
Source§fn cross_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
fn cross_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
Add a CROSS JOIN clause
Source§fn full_outer_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
fn full_outer_join(&mut self, table: &str, on: impl FnOnce(&mut JoinBuilder))
Add a FULL OUTER JOIN clause
Source§impl QueryCommon for QueryBuilder
impl QueryCommon for QueryBuilder
Source§fn with(&mut self, alias: &str, chain_builder: ChainBuilder)
fn with(&mut self, alias: &str, chain_builder: ChainBuilder)
Add a WITH clause
Source§fn with_recursive(&mut self, alias: &str, chain_builder: ChainBuilder)
fn with_recursive(&mut self, alias: &str, chain_builder: ChainBuilder)
Add a recursive WITH clause
Source§fn union(&mut self, chain_builder: ChainBuilder)
fn union(&mut self, chain_builder: ChainBuilder)
Add a UNION clause
Source§fn union_all(&mut self, chain_builder: ChainBuilder)
fn union_all(&mut self, chain_builder: ChainBuilder)
Add a UNION ALL clause
Source§impl Serialize for QueryBuilder
impl Serialize for QueryBuilder
Source§impl WhereClauses for QueryBuilder
impl WhereClauses for QueryBuilder
Source§fn where_null(&mut self, column: &str)
fn where_null(&mut self, column: &str)
Add an IS NULL condition
Source§fn where_not_null(&mut self, column: &str)
fn where_not_null(&mut self, column: &str)
Add an IS NOT NULL condition
Source§fn where_like(&mut self, column: &str, value: Value)
fn where_like(&mut self, column: &str, value: Value)
Add a LIKE condition
Source§fn where_not_like(&mut self, column: &str, value: Value)
fn where_not_like(&mut self, column: &str, value: Value)
Add a NOT LIKE condition
Source§fn where_subquery(&mut self, query: impl FnOnce(&mut QueryBuilder))
fn where_subquery(&mut self, query: impl FnOnce(&mut QueryBuilder))
Add a subquery condition
Source§fn or(&mut self) -> &mut QueryBuilder
fn or(&mut self) -> &mut QueryBuilder
Add an OR condition
Source§fn where_ilike(&mut self, column: &str, value: Value)
fn where_ilike(&mut self, column: &str, value: Value)
Add a case-insensitive LIKE condition (ILIKE for Postgres, LOWER() for MySQL)
Source§fn where_column(&mut self, lhs: &str, operator: &str, rhs: &str)
fn where_column(&mut self, lhs: &str, operator: &str, rhs: &str)
Add a column-to-column comparison
Source§fn where_exists(&mut self, query: impl FnOnce(&mut ChainBuilder))
fn where_exists(&mut self, query: impl FnOnce(&mut ChainBuilder))
Add an EXISTS condition
Source§fn where_not_exists(&mut self, query: impl FnOnce(&mut ChainBuilder))
fn where_not_exists(&mut self, query: impl FnOnce(&mut ChainBuilder))
Add a NOT EXISTS condition
Source§fn where_json_contains(&mut self, column: &str, value: Value)
fn where_json_contains(&mut self, column: &str, value: Value)
Add a JSON contains condition (MySQL JSON_CONTAINS)
Auto Trait Implementations§
impl Freeze for QueryBuilder
impl RefUnwindSafe for QueryBuilder
impl Send for QueryBuilder
impl Sync for QueryBuilder
impl Unpin for QueryBuilder
impl UnwindSafe for QueryBuilder
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<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