pub struct table;
Expand description
The actual table struct
This is the type which provides the base methods of the query
builder, such as .select
and .filter
.
Implementations§
Trait Implementations§
source§impl<S1, S2> AliasAliasAppearsInFromClause<table, S2, S1> for tablewhere
S1: AliasSource<Target = table> + AliasAliasAppearsInFromClauseSameTable<S2, table>,
S2: AliasSource<Target = table>,
impl<S1, S2> AliasAliasAppearsInFromClause<table, S2, S1> for tablewhere
S1: AliasSource<Target = table> + AliasAliasAppearsInFromClauseSameTable<S2, table>,
S2: AliasSource<Target = table>,
§type Count = <S1 as AliasAliasAppearsInFromClauseSameTable<S2, table>>::Count
type Count = <S1 as AliasAliasAppearsInFromClauseSameTable<S2, table>>::Count
Will be passed on to the
impl AppearsInFromClause<QS>
source§impl<S> AliasAppearsInFromClause<S, table> for tablewhere
S: AliasSource<Target = table>,
impl<S> AliasAppearsInFromClause<S, table> for tablewhere
S: AliasSource<Target = table>,
source§impl<S> AppearsInFromClause<Alias<S>> for tablewhere
S: AliasSource,
impl<S> AppearsInFromClause<Alias<S>> for tablewhere
S: AliasSource,
source§impl AppearsInFromClause<table> for NoFromClause
impl AppearsInFromClause<table> for NoFromClause
source§impl AppearsInFromClause<table> for table
impl AppearsInFromClause<table> for table
source§impl AsQuery for table
impl AsQuery for table
§type SqlType = (Integer, Text, SmallInt, Nullable<Date>, Nullable<Text>, Nullable<Text>, Nullable<Text>, Quantity, Nullable<Quality>, Nullable<SmallInt>, Nullable<SmallInt>, Nullable<Text>, Nullable<Integer>, Uuid, Nullable<Timestamp>)
type SqlType = (Integer, Text, SmallInt, Nullable<Date>, Nullable<Text>, Nullable<Text>, Nullable<Text>, Quantity, Nullable<Quality>, Nullable<SmallInt>, Nullable<SmallInt>, Nullable<Text>, Nullable<Integer>, Uuid, Nullable<Timestamp>)
The SQL type of
Self::Query
§type Query = SelectStatement<FromClause<table>>
type Query = SelectStatement<FromClause<table>>
What kind of query does this type represent?
source§impl<'a, T> Insertable<T> for &'a tablewhere
table: Insertable<T>,
impl<'a, T> Insertable<T> for &'a tablewhere
table: Insertable<T>,
source§impl<T> Insertable<T> for table
impl<T> Insertable<T> for table
source§impl<'insert> Insertable<table> for &'insert NewSeed
impl<'insert> Insertable<table> for &'insert NewSeed
§type Values = <(Option<Grouped<Eq<name, <&'insert String as AsExpression<<name as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<plant_id, <&'insert i32 as AsExpression<<plant_id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<harvest_year, <&'insert i16 as AsExpression<<harvest_year as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<use_by, <&'insert NaiveDate as AsExpression<<use_by as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<origin, <&'insert String as AsExpression<<origin as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<taste, <&'insert String as AsExpression<<taste as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<yield_, <&'insert String as AsExpression<<yield_ as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<quantity, <&'insert Quantity as AsExpression<<quantity as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<quality, <&'insert Quality as AsExpression<<quality as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<price, <&'insert i16 as AsExpression<<price as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<generation, <&'insert i16 as AsExpression<<generation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<notes, <&'insert String as AsExpression<<notes as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<created_by, <&'insert Uuid as AsExpression<<created_by as Expression>::SqlType>>::Expression>>>) as Insertable<table>>::Values
type Values = <(Option<Grouped<Eq<name, <&'insert String as AsExpression<<name as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<plant_id, <&'insert i32 as AsExpression<<plant_id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<harvest_year, <&'insert i16 as AsExpression<<harvest_year as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<use_by, <&'insert NaiveDate as AsExpression<<use_by as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<origin, <&'insert String as AsExpression<<origin as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<taste, <&'insert String as AsExpression<<taste as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<yield_, <&'insert String as AsExpression<<yield_ as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<quantity, <&'insert Quantity as AsExpression<<quantity as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<quality, <&'insert Quality as AsExpression<<quality as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<price, <&'insert i16 as AsExpression<<price as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<generation, <&'insert i16 as AsExpression<<generation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<notes, <&'insert String as AsExpression<<notes as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<created_by, <&'insert Uuid as AsExpression<<created_by as Expression>::SqlType>>::Expression>>>) as Insertable<table>>::Values
The
VALUES
clause to insert these records Read moresource§fn values(
self,
) -> <(Option<Eq<name, &'insert String>>, Option<Eq<plant_id, &'insert i32>>, Option<Eq<harvest_year, &'insert i16>>, Option<Eq<use_by, &'insert NaiveDate>>, Option<Eq<origin, &'insert String>>, Option<Eq<taste, &'insert String>>, Option<Eq<yield_, &'insert String>>, Option<Eq<quantity, &'insert Quantity>>, Option<Eq<quality, &'insert Quality>>, Option<Eq<price, &'insert i16>>, Option<Eq<generation, &'insert i16>>, Option<Eq<notes, &'insert String>>, Option<Eq<created_by, &'insert Uuid>>) as Insertable<table>>::Values
fn values( self, ) -> <(Option<Eq<name, &'insert String>>, Option<Eq<plant_id, &'insert i32>>, Option<Eq<harvest_year, &'insert i16>>, Option<Eq<use_by, &'insert NaiveDate>>, Option<Eq<origin, &'insert String>>, Option<Eq<taste, &'insert String>>, Option<Eq<yield_, &'insert String>>, Option<Eq<quantity, &'insert Quantity>>, Option<Eq<quality, &'insert Quality>>, Option<Eq<price, &'insert i16>>, Option<Eq<generation, &'insert i16>>, Option<Eq<notes, &'insert String>>, Option<Eq<created_by, &'insert Uuid>>) as Insertable<table>>::Values
Construct
Self::Values
Read moresource§fn insert_into(self, table: T) -> InsertStatement<T, Self::Values>
fn insert_into(self, table: T) -> InsertStatement<T, Self::Values>
Insert
self
into a given table. Read moresource§impl Insertable<table> for NewSeed
impl Insertable<table> for NewSeed
§type Values = <(Option<Grouped<Eq<name, <String as AsExpression<<name as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<plant_id, <i32 as AsExpression<<plant_id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<harvest_year, <i16 as AsExpression<<harvest_year as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<use_by, <NaiveDate as AsExpression<<use_by as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<origin, <String as AsExpression<<origin as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<taste, <String as AsExpression<<taste as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<yield_, <String as AsExpression<<yield_ as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<quantity, <Quantity as AsExpression<<quantity as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<quality, <Quality as AsExpression<<quality as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<price, <i16 as AsExpression<<price as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<generation, <i16 as AsExpression<<generation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<notes, <String as AsExpression<<notes as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<created_by, <Uuid as AsExpression<<created_by as Expression>::SqlType>>::Expression>>>) as Insertable<table>>::Values
type Values = <(Option<Grouped<Eq<name, <String as AsExpression<<name as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<plant_id, <i32 as AsExpression<<plant_id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<harvest_year, <i16 as AsExpression<<harvest_year as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<use_by, <NaiveDate as AsExpression<<use_by as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<origin, <String as AsExpression<<origin as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<taste, <String as AsExpression<<taste as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<yield_, <String as AsExpression<<yield_ as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<quantity, <Quantity as AsExpression<<quantity as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<quality, <Quality as AsExpression<<quality as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<price, <i16 as AsExpression<<price as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<generation, <i16 as AsExpression<<generation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<notes, <String as AsExpression<<notes as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<created_by, <Uuid as AsExpression<<created_by as Expression>::SqlType>>::Expression>>>) as Insertable<table>>::Values
The
VALUES
clause to insert these records Read moresource§fn values(
self,
) -> <(Option<Eq<name, String>>, Option<Eq<plant_id, i32>>, Option<Eq<harvest_year, i16>>, Option<Eq<use_by, NaiveDate>>, Option<Eq<origin, String>>, Option<Eq<taste, String>>, Option<Eq<yield_, String>>, Option<Eq<quantity, Quantity>>, Option<Eq<quality, Quality>>, Option<Eq<price, i16>>, Option<Eq<generation, i16>>, Option<Eq<notes, String>>, Option<Eq<created_by, Uuid>>) as Insertable<table>>::Values
fn values( self, ) -> <(Option<Eq<name, String>>, Option<Eq<plant_id, i32>>, Option<Eq<harvest_year, i16>>, Option<Eq<use_by, NaiveDate>>, Option<Eq<origin, String>>, Option<Eq<taste, String>>, Option<Eq<yield_, String>>, Option<Eq<quantity, Quantity>>, Option<Eq<quality, Quality>>, Option<Eq<price, i16>>, Option<Eq<generation, i16>>, Option<Eq<notes, String>>, Option<Eq<created_by, Uuid>>) as Insertable<table>>::Values
Construct
Self::Values
Read moresource§fn insert_into(self, table: T) -> InsertStatement<T, Self::Values>
fn insert_into(self, table: T) -> InsertStatement<T, Self::Values>
Insert
self
into a given table. Read moresource§impl IntoUpdateTarget for table
impl IntoUpdateTarget for table
§type WhereClause = <<table as AsQuery>::Query as IntoUpdateTarget>::WhereClause
type WhereClause = <<table as AsQuery>::Query as IntoUpdateTarget>::WhereClause
What is the
WHERE
clause of this target?source§fn into_update_target(self) -> UpdateTarget<Self::Table, Self::WhereClause>
fn into_update_target(self) -> UpdateTarget<Self::Table, Self::WhereClause>
Decomposes
self
into the table and where clause.source§impl<DB> QueryFragment<DB> for table
impl<DB> QueryFragment<DB> for table
source§fn walk_ast<'b>(
&'b self,
__diesel_internal_pass: AstPass<'_, 'b, DB>,
) -> QueryResult<()>
fn walk_ast<'b>( &'b self, __diesel_internal_pass: AstPass<'_, 'b, DB>, ) -> QueryResult<()>
Walk over this
QueryFragment
for all passes. Read moresource§fn to_sql(
&self,
out: &mut <DB as Backend>::QueryBuilder,
backend: &DB,
) -> Result<(), Error>
fn to_sql( &self, out: &mut <DB as Backend>::QueryBuilder, backend: &DB, ) -> Result<(), Error>
Converts this
QueryFragment
to its SQL representation. Read moresource§fn collect_binds<'b>(
&'b self,
out: &mut <DB as HasBindCollector<'b>>::BindCollector,
metadata_lookup: &mut <DB as TypeMetadata>::MetadataLookup,
backend: &'b DB,
) -> Result<(), Error>
fn collect_binds<'b>( &'b self, out: &mut <DB as HasBindCollector<'b>>::BindCollector, metadata_lookup: &mut <DB as TypeMetadata>::MetadataLookup, backend: &'b DB, ) -> Result<(), Error>
Serializes all bind parameters in this query. Read more
source§impl QueryId for table
impl QueryId for table
source§const HAS_STATIC_QUERY_ID: bool = true
const HAS_STATIC_QUERY_ID: bool = true
Can the SQL generated by
Self
be uniquely identified by its type? Read moresource§impl QuerySource for table
impl QuerySource for table
§type FromClause = StaticQueryFragmentInstance<table>
type FromClause = StaticQueryFragmentInstance<table>
The type returned by
from_clause
§type DefaultSelection = <table as Table>::AllColumns
type DefaultSelection = <table as Table>::AllColumns
The type returned by
default_selection
source§fn from_clause(&self) -> Self::FromClause
fn from_clause(&self) -> Self::FromClause
The actual
FROM
clause of this type. This is typically only called in
QueryFragment
implementations.source§fn default_selection(&self) -> Self::DefaultSelection
fn default_selection(&self) -> Self::DefaultSelection
The default select clause of this type, which should be used if no
select clause was explicitly specified. This should always be a tuple of
all the desired columns, not
star
source§impl Table for table
impl Table for table
§type PrimaryKey = id
type PrimaryKey = id
The type returned by
primary_key
§type AllColumns = (id, name, harvest_year, use_by, origin, taste, yield_, quantity, quality, price, generation, notes, plant_id, created_by, archived_at)
type AllColumns = (id, name, harvest_year, use_by, origin, taste, yield_, quantity, quality, price, generation, notes, plant_id, created_by, archived_at)
The type returned by
all_columns
source§fn primary_key(&self) -> Self::PrimaryKey
fn primary_key(&self) -> Self::PrimaryKey
Returns the primary key of this table. Read more
source§fn all_columns() -> Self::AllColumns
fn all_columns() -> Self::AllColumns
Returns a tuple of all columns belonging to this table.
impl AppearsOnTable<table> for star
impl Copy for table
impl<S> JoinTo<Alias<S>> for table
impl<Left, Right, Kind> JoinTo<Join<Left, Right, Kind>> for table
impl<S> JoinTo<Only<S>> for table
impl JoinTo<table> for table
impl JoinTo<table> for table
impl JoinTo<table> for table
impl JoinTo<table> for table
impl SelectableExpression<table> for archived_at
impl SelectableExpression<table> for created_by
impl SelectableExpression<table> for generation
impl SelectableExpression<table> for harvest_year
impl SelectableExpression<table> for id
impl SelectableExpression<table> for name
impl SelectableExpression<table> for notes
impl SelectableExpression<table> for origin
impl SelectableExpression<table> for plant_id
impl SelectableExpression<table> for price
impl SelectableExpression<table> for quality
impl SelectableExpression<table> for quantity
impl SelectableExpression<table> for star
impl SelectableExpression<table> for taste
impl SelectableExpression<table> for use_by
impl SelectableExpression<table> for yield_
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<Only<table>> for table
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for Only<table>
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl UndecoratedInsertRecord<table> for NewSeed
Auto Trait Implementations§
impl Freeze for table
impl RefUnwindSafe for table
impl Send for table
impl Sync for table
impl Unpin for table
impl UnwindSafe for table
Blanket Implementations§
source§impl<T1, T2> AppearsInFromClause<T2> for T1
impl<T1, T2> AppearsInFromClause<T2> for T1
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<'a, T, DB> BoxedDsl<'a, DB> for Twhere
T: Table<Query = SelectStatement<FromClause<T>>> + AsQuery,
SelectStatement<FromClause<T>>: BoxedDsl<'a, DB>,
<T as QuerySource>::DefaultSelection: Expression<SqlType = <T as AsQuery>::SqlType> + ValidGrouping<()>,
<T as AsQuery>::SqlType: TypedExpressionType,
impl<'a, T, DB> BoxedDsl<'a, DB> for Twhere
T: Table<Query = SelectStatement<FromClause<T>>> + AsQuery,
SelectStatement<FromClause<T>>: BoxedDsl<'a, DB>,
<T as QuerySource>::DefaultSelection: Expression<SqlType = <T as AsQuery>::SqlType> + ValidGrouping<()>,
<T as AsQuery>::SqlType: TypedExpressionType,
§type Output = <SelectStatement<FromClause<T>> as BoxedDsl<'a, DB>>::Output
type Output = <SelectStatement<FromClause<T>> as BoxedDsl<'a, DB>>::Output
The return type of
internal_into_boxed
source§fn internal_into_boxed(self) -> <T as BoxedDsl<'a, DB>>::Output
fn internal_into_boxed(self) -> <T as BoxedDsl<'a, DB>>::Output
See the trait documentation.
source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> CombineDsl for Twhere
T: Table,
impl<T> CombineDsl for Twhere
T: Table,
source§fn union<Rhs>(
self,
rhs: Rhs,
) -> CombinationClause<Union, Distinct, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>
fn union<Rhs>( self, rhs: Rhs, ) -> CombinationClause<Union, Distinct, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>
Combine two queries using a SQL
UNION
Read moresource§fn union_all<Rhs>(
self,
rhs: Rhs,
) -> CombinationClause<Union, All, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>
fn union_all<Rhs>( self, rhs: Rhs, ) -> CombinationClause<Union, All, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>
Combine two queries using a SQL
UNION ALL
source§fn intersect<Rhs>(
self,
rhs: Rhs,
) -> CombinationClause<Intersect, Distinct, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>
fn intersect<Rhs>( self, rhs: Rhs, ) -> CombinationClause<Intersect, Distinct, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>
Combine two queries using a SQL
INTERSECT
source§fn intersect_all<Rhs>(
self,
rhs: Rhs,
) -> CombinationClause<Intersect, All, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>
fn intersect_all<Rhs>( self, rhs: Rhs, ) -> CombinationClause<Intersect, All, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>
Combine two queries using a SQL
INTERSECT ALL
source§fn except<Rhs>(
self,
rhs: Rhs,
) -> CombinationClause<Except, Distinct, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>
fn except<Rhs>( self, rhs: Rhs, ) -> CombinationClause<Except, Distinct, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>
Combine two queries using a SQL
EXCEPT
source§fn except_all<Rhs>(
self,
rhs: Rhs,
) -> CombinationClause<Except, All, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>
fn except_all<Rhs>( self, rhs: Rhs, ) -> CombinationClause<Except, All, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>
Combine two queries using a SQL
EXCEPT ALL
source§impl<T> DistinctDsl for Twhere
T: AsQuery<Query = SelectStatement<FromClause<T>>> + Table,
<T as QuerySource>::DefaultSelection: Expression<SqlType = <T as AsQuery>::SqlType> + ValidGrouping<()>,
<T as AsQuery>::SqlType: TypedExpressionType,
impl<T> DistinctDsl for Twhere
T: AsQuery<Query = SelectStatement<FromClause<T>>> + Table,
<T as QuerySource>::DefaultSelection: Expression<SqlType = <T as AsQuery>::SqlType> + ValidGrouping<()>,
<T as AsQuery>::SqlType: TypedExpressionType,
§type Output = <SelectStatement<FromClause<T>> as DistinctDsl>::Output
type Output = <SelectStatement<FromClause<T>> as DistinctDsl>::Output
The type returned by
.distinct
source§fn distinct(self) -> <SelectStatement<FromClause<T>> as DistinctDsl>::Output
fn distinct(self) -> <SelectStatement<FromClause<T>> as DistinctDsl>::Output
See the trait documentation.
source§impl<T, Selection> DistinctOnDsl<Selection> for Twhere
Selection: SelectableExpression<T>,
<Selection as Expression>::SqlType: SingleValue,
T: Table<Query = SelectStatement<FromClause<T>>> + AsQuery,
SelectStatement<FromClause<T>>: DistinctOnDsl<Selection>,
<T as QuerySource>::DefaultSelection: Expression<SqlType = <T as AsQuery>::SqlType> + ValidGrouping<()>,
<T as AsQuery>::SqlType: TypedExpressionType,
impl<T, Selection> DistinctOnDsl<Selection> for Twhere
Selection: SelectableExpression<T>,
<Selection as Expression>::SqlType: SingleValue,
T: Table<Query = SelectStatement<FromClause<T>>> + AsQuery,
SelectStatement<FromClause<T>>: DistinctOnDsl<Selection>,
<T as QuerySource>::DefaultSelection: Expression<SqlType = <T as AsQuery>::SqlType> + ValidGrouping<()>,
<T as AsQuery>::SqlType: TypedExpressionType,
§type Output = <SelectStatement<FromClause<T>> as DistinctOnDsl<Selection>>::Output
type Output = <SelectStatement<FromClause<T>> as DistinctOnDsl<Selection>>::Output
The type returned by
.distinct_on
source§fn distinct_on(
self,
selection: Selection,
) -> <T as DistinctOnDsl<Selection>>::Output
fn distinct_on( self, selection: Selection, ) -> <T as DistinctOnDsl<Selection>>::Output
See the trait documentation
source§impl<Conn, DB, T> ExecuteDsl<Conn, DB> for T
impl<Conn, DB, T> ExecuteDsl<Conn, DB> for T
source§fn execute<'conn, 'query>(
query: T,
conn: &'conn mut Conn,
) -> <Conn as AsyncConnection>::ExecuteFuture<'conn, 'query>where
T: 'query,
fn execute<'conn, 'query>(
query: T,
conn: &'conn mut Conn,
) -> <Conn as AsyncConnection>::ExecuteFuture<'conn, 'query>where
T: 'query,
Execute this command
source§impl<Conn, DB, T> ExecuteDsl<Conn, DB> for T
impl<Conn, DB, T> ExecuteDsl<Conn, DB> for T
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 moresource§impl<T> IntoSql for T
impl<T> IntoSql for T
source§fn into_sql<T>(self) -> Self::Expression
fn into_sql<T>(self) -> Self::Expression
Convert
self
to an expression for Diesel’s query builder. Read moresource§fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression
fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expression
Convert
&self
to an expression for Diesel’s query builder. Read moresource§impl<T> JoinOnDsl for Twhere
T: QuerySource,
impl<T> JoinOnDsl for Twhere
T: QuerySource,
source§fn on<On>(self, on: On) -> OnClauseWrapper<Self, On>
fn on<On>(self, on: On) -> OnClauseWrapper<Self, On>
See the trait documentation.
source§impl<Lhs, Rhs, On> JoinTo<OnClauseWrapper<Rhs, On>> for Lhswhere
Lhs: Table,
impl<Lhs, Rhs, On> JoinTo<OnClauseWrapper<Rhs, On>> for Lhswhere
Lhs: Table,
type FromClause = Rhs
type OnClause = On
fn join_target( rhs: OnClauseWrapper<Rhs, On>, ) -> (<Lhs as JoinTo<OnClauseWrapper<Rhs, On>>>::FromClause, <Lhs as JoinTo<OnClauseWrapper<Rhs, On>>>::OnClause)
source§impl<T, Lock> LockingDsl<Lock> for Twhere
T: Table<Query = SelectStatement<FromClause<T>>> + AsQuery,
<T as QuerySource>::DefaultSelection: Expression<SqlType = <T as AsQuery>::SqlType> + ValidGrouping<()>,
<T as AsQuery>::SqlType: TypedExpressionType,
impl<T, Lock> LockingDsl<Lock> for Twhere
T: Table<Query = SelectStatement<FromClause<T>>> + AsQuery,
<T as QuerySource>::DefaultSelection: Expression<SqlType = <T as AsQuery>::SqlType> + ValidGrouping<()>,
<T as AsQuery>::SqlType: TypedExpressionType,
§type Output = <SelectStatement<FromClause<T>> as LockingDsl<Lock>>::Output
type Output = <SelectStatement<FromClause<T>> as LockingDsl<Lock>>::Output
The type returned by
set_lock
. See dsl::ForUpdate
and friends for
convenient access to this type.source§fn with_lock(self, lock: Lock) -> <T as LockingDsl<Lock>>::Output
fn with_lock(self, lock: Lock) -> <T as LockingDsl<Lock>>::Output
See the trait level documentation
source§impl<T> QueryDsl for Twhere
T: Table,
impl<T> QueryDsl for Twhere
T: Table,
source§fn distinct(self) -> Self::Outputwhere
Self: DistinctDsl,
fn distinct(self) -> Self::Outputwhere
Self: DistinctDsl,
Adds the
DISTINCT
keyword to a query. Read moresource§fn distinct_on<Expr>(self, expr: Expr) -> Self::Outputwhere
Self: DistinctOnDsl<Expr>,
fn distinct_on<Expr>(self, expr: Expr) -> Self::Outputwhere
Self: DistinctOnDsl<Expr>,
Adds the
DISTINCT ON
clause to a query. Read moresource§fn select<Selection>(self, selection: Selection) -> Self::Outputwhere
Selection: Expression,
Self: SelectDsl<Selection>,
fn select<Selection>(self, selection: Selection) -> Self::Outputwhere
Selection: Expression,
Self: SelectDsl<Selection>,
Adds a
SELECT
clause to the query. Read moresource§fn count(self) -> Self::Output
fn count(self) -> Self::Output
Get the count of a query. This is equivalent to
.select(count_star())
Read moresource§fn inner_join<Rhs>(self, rhs: Rhs) -> Self::Outputwhere
Self: JoinWithImplicitOnClause<Rhs, Inner>,
fn inner_join<Rhs>(self, rhs: Rhs) -> Self::Outputwhere
Self: JoinWithImplicitOnClause<Rhs, Inner>,
Join two tables using a SQL
INNER JOIN
. Read moresource§fn left_outer_join<Rhs>(self, rhs: Rhs) -> Self::Outputwhere
Self: JoinWithImplicitOnClause<Rhs, LeftOuter>,
fn left_outer_join<Rhs>(self, rhs: Rhs) -> Self::Outputwhere
Self: JoinWithImplicitOnClause<Rhs, LeftOuter>,
Join two tables using a SQL
LEFT OUTER JOIN
. Read moresource§fn left_join<Rhs>(self, rhs: Rhs) -> Self::Outputwhere
Self: JoinWithImplicitOnClause<Rhs, LeftOuter>,
fn left_join<Rhs>(self, rhs: Rhs) -> Self::Outputwhere
Self: JoinWithImplicitOnClause<Rhs, LeftOuter>,
Alias for
left_outer_join
.source§fn filter<Predicate>(self, predicate: Predicate) -> Self::Outputwhere
Self: FilterDsl<Predicate>,
fn filter<Predicate>(self, predicate: Predicate) -> Self::Outputwhere
Self: FilterDsl<Predicate>,
Adds to the
WHERE
clause of a query. Read moresource§fn or_filter<Predicate>(self, predicate: Predicate) -> Self::Outputwhere
Self: OrFilterDsl<Predicate>,
fn or_filter<Predicate>(self, predicate: Predicate) -> Self::Outputwhere
Self: OrFilterDsl<Predicate>,
source§fn find<PK>(self, id: PK) -> Self::Outputwhere
Self: FindDsl<PK>,
fn find<PK>(self, id: PK) -> Self::Outputwhere
Self: FindDsl<PK>,
Attempts to find a single record from the given table by primary key. Read more
source§fn order<Expr>(self, expr: Expr) -> Self::Outputwhere
Expr: Expression,
Self: OrderDsl<Expr>,
fn order<Expr>(self, expr: Expr) -> Self::Outputwhere
Expr: Expression,
Self: OrderDsl<Expr>,
Sets the order clause of a query. Read more
source§fn order_by<Expr>(self, expr: Expr) -> Self::Outputwhere
Expr: Expression,
Self: OrderDsl<Expr>,
fn order_by<Expr>(self, expr: Expr) -> Self::Outputwhere
Expr: Expression,
Self: OrderDsl<Expr>,
Alias for
order
source§fn then_order_by<Order>(self, order: Order) -> Self::Outputwhere
Self: ThenOrderDsl<Order>,
fn then_order_by<Order>(self, order: Order) -> Self::Outputwhere
Self: ThenOrderDsl<Order>,
Appends to the
ORDER BY
clause of this SQL query. Read moresource§fn limit(self, limit: i64) -> Self::Outputwhere
Self: LimitDsl,
fn limit(self, limit: i64) -> Self::Outputwhere
Self: LimitDsl,
Sets the limit clause of the query. Read more
source§fn offset(self, offset: i64) -> Self::Outputwhere
Self: OffsetDsl,
fn offset(self, offset: i64) -> Self::Outputwhere
Self: OffsetDsl,
Sets the offset clause of the query. Read more
source§fn group_by<GB>(self, group_by: GB) -> Self::Outputwhere
GB: Expression,
Self: GroupByDsl<GB>,
fn group_by<GB>(self, group_by: GB) -> Self::Outputwhere
GB: Expression,
Self: GroupByDsl<GB>,
Sets the
group by
clause of a query. Read moresource§fn having<Predicate>(self, predicate: Predicate) -> Self::Outputwhere
Self: HavingDsl<Predicate>,
fn having<Predicate>(self, predicate: Predicate) -> Self::Outputwhere
Self: HavingDsl<Predicate>,
Adds to the
HAVING
clause of a query. Read moresource§fn for_update(self) -> Self::Outputwhere
Self: LockingDsl<ForUpdate>,
fn for_update(self) -> Self::Outputwhere
Self: LockingDsl<ForUpdate>,
Adds
FOR UPDATE
to the end of the select statement. Read moresource§fn for_no_key_update(self) -> Self::Outputwhere
Self: LockingDsl<ForNoKeyUpdate>,
fn for_no_key_update(self) -> Self::Outputwhere
Self: LockingDsl<ForNoKeyUpdate>,
Adds
FOR NO KEY UPDATE
to the end of the select statement. Read moreAdds
FOR SHARE
to the end of the select statement. Read moreAdds
FOR KEY SHARE
to the end of the select statement. Read moresource§fn skip_locked(self) -> Self::Outputwhere
Self: ModifyLockDsl<SkipLocked>,
fn skip_locked(self) -> Self::Outputwhere
Self: ModifyLockDsl<SkipLocked>,
source§fn into_boxed<'a, DB>(self) -> Self::Output
fn into_boxed<'a, DB>(self) -> Self::Output
Boxes the pieces of a query into a single type. Read more
source§fn single_value(self) -> Self::Outputwhere
Self: SingleValueDsl,
fn single_value(self) -> Self::Outputwhere
Self: SingleValueDsl,
Wraps this select statement in parenthesis, allowing it to be used
as an expression. Read more
source§impl<T, Conn> RunQueryDsl<Conn> for T
impl<T, Conn> RunQueryDsl<Conn> for T
source§fn execute<'conn, 'query>(
self,
conn: &'conn mut Conn,
) -> <Conn as AsyncConnection>::ExecuteFuture<'conn, 'query>
fn execute<'conn, 'query>( self, conn: &'conn mut Conn, ) -> <Conn as AsyncConnection>::ExecuteFuture<'conn, 'query>
Executes the given command, returning the number of rows affected. Read more
source§fn load<'query, 'conn, U>(
self,
conn: &'conn mut Conn,
) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U>>>
fn load<'query, 'conn, U>( self, conn: &'conn mut Conn, ) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U>>>
source§fn load_stream<'conn, 'query, U>(
self,
conn: &'conn mut Conn,
) -> Self::LoadFuture<'conn>where
Conn: AsyncConnection,
U: 'conn,
Self: LoadQuery<'query, Conn, U> + 'query,
fn load_stream<'conn, 'query, U>(
self,
conn: &'conn mut Conn,
) -> Self::LoadFuture<'conn>where
Conn: AsyncConnection,
U: 'conn,
Self: LoadQuery<'query, Conn, U> + 'query,
source§fn get_result<'query, 'conn, U>(
self,
conn: &'conn mut Conn,
) -> AndThen<Self::LoadFuture<'conn>, Map<StreamFuture<Pin<Box<Self::Stream<'conn>>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>>>)) -> Result<U, Error>>, fn(_: Self::Stream<'conn>) -> Map<StreamFuture<Pin<Box<Self::Stream<'conn>>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>>>)) -> Result<U, Error>>>
fn get_result<'query, 'conn, U>( self, conn: &'conn mut Conn, ) -> AndThen<Self::LoadFuture<'conn>, Map<StreamFuture<Pin<Box<Self::Stream<'conn>>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>>>)) -> Result<U, Error>>, fn(_: Self::Stream<'conn>) -> Map<StreamFuture<Pin<Box<Self::Stream<'conn>>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>>>)) -> Result<U, Error>>>
Runs the command, and returns the affected row. Read more
source§fn get_results<'query, 'conn, U>(
self,
conn: &'conn mut Conn,
) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U>>>
fn get_results<'query, 'conn, U>( self, conn: &'conn mut Conn, ) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U>>>
Runs the command, returning an
Vec
with the affected rows. Read moresource§fn first<'query, 'conn, U>(
self,
conn: &'conn mut Conn,
) -> AndThen<<Self::Output as LoadQuery<'query, Conn, U>>::LoadFuture<'conn>, Map<StreamFuture<Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>>>)) -> Result<U, Error>>, fn(_: <Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>) -> Map<StreamFuture<Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>>>)) -> Result<U, Error>>>
fn first<'query, 'conn, U>( self, conn: &'conn mut Conn, ) -> AndThen<<Self::Output as LoadQuery<'query, Conn, U>>::LoadFuture<'conn>, Map<StreamFuture<Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>>>)) -> Result<U, Error>>, fn(_: <Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>) -> Map<StreamFuture<Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>>>)) -> Result<U, Error>>>
Attempts to load a single record. Read more
source§impl<T, Conn> RunQueryDsl<Conn> for Twhere
T: Table,
impl<T, Conn> RunQueryDsl<Conn> for Twhere
T: Table,
source§fn execute(self, conn: &mut Conn) -> Result<usize, Error>where
Conn: Connection,
Self: ExecuteDsl<Conn>,
fn execute(self, conn: &mut Conn) -> Result<usize, Error>where
Conn: Connection,
Self: ExecuteDsl<Conn>,
Executes the given command, returning the number of rows affected. Read more
source§fn load<'query, U>(self, conn: &mut Conn) -> Result<Vec<U>, Error>where
Self: LoadQuery<'query, Conn, U>,
fn load<'query, U>(self, conn: &mut Conn) -> Result<Vec<U>, Error>where
Self: LoadQuery<'query, Conn, U>,
source§fn load_iter<'conn, 'query, U, B>(
self,
conn: &'conn mut Conn,
) -> Result<Self::Ret, Error>where
'query: 'conn,
U: 'conn,
Self: LoadQuery<'query, Conn, U, B> + 'conn,
fn load_iter<'conn, 'query, U, B>(
self,
conn: &'conn mut Conn,
) -> Result<Self::Ret, Error>where
'query: 'conn,
U: 'conn,
Self: LoadQuery<'query, Conn, U, B> + 'conn,
source§fn get_result<'query, U>(self, conn: &mut Conn) -> Result<U, Error>where
Self: LoadQuery<'query, Conn, U>,
fn get_result<'query, U>(self, conn: &mut Conn) -> Result<U, Error>where
Self: LoadQuery<'query, Conn, U>,
Runs the command, and returns the affected row. Read more