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 = (Uuid, Salutation, Nullable<Text>, Text, Nullable<Text>, Nullable<Text>, Nullable<Text>, Nullable<Experience>, Nullable<Membership>, Nullable<Array<Nullable<Integer>>>, Nullable<Date>, Nullable<Array<Nullable<Integer>>>)
type SqlType = (Uuid, Salutation, Nullable<Text>, Text, Nullable<Text>, Nullable<Text>, Nullable<Text>, Nullable<Experience>, Nullable<Membership>, Nullable<Array<Nullable<Integer>>>, Nullable<Date>, Nullable<Array<Nullable<Integer>>>)
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 Users
impl<'insert> Insertable<table> for &'insert Users
§type Values = <(Option<Grouped<Eq<id, <&'insert Uuid as AsExpression<<id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<salutation, <&'insert Salutation as AsExpression<<salutation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<title, <&'insert String as AsExpression<<title as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<country, <&'insert String as AsExpression<<country as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<phone, <&'insert String as AsExpression<<phone as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<website, <&'insert String as AsExpression<<website as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<organization, <&'insert String as AsExpression<<organization as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<experience, <&'insert Experience as AsExpression<<experience as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<membership, <&'insert Membership as AsExpression<<membership as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<member_years, <&'insert Vec<Option<i32>> as AsExpression<<member_years as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<member_since, <&'insert NaiveDate as AsExpression<<member_since as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<permacoins, <&'insert Vec<Option<i32>> as AsExpression<<permacoins as Expression>::SqlType>>::Expression>>>) as Insertable<table>>::Values
type Values = <(Option<Grouped<Eq<id, <&'insert Uuid as AsExpression<<id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<salutation, <&'insert Salutation as AsExpression<<salutation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<title, <&'insert String as AsExpression<<title as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<country, <&'insert String as AsExpression<<country as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<phone, <&'insert String as AsExpression<<phone as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<website, <&'insert String as AsExpression<<website as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<organization, <&'insert String as AsExpression<<organization as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<experience, <&'insert Experience as AsExpression<<experience as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<membership, <&'insert Membership as AsExpression<<membership as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<member_years, <&'insert Vec<Option<i32>> as AsExpression<<member_years as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<member_since, <&'insert NaiveDate as AsExpression<<member_since as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<permacoins, <&'insert Vec<Option<i32>> as AsExpression<<permacoins as Expression>::SqlType>>::Expression>>>) as Insertable<table>>::Values
The
VALUES
clause to insert these records Read moresource§fn values(
self,
) -> <(Option<Eq<id, &'insert Uuid>>, Option<Eq<salutation, &'insert Salutation>>, Option<Eq<title, &'insert String>>, Option<Eq<country, &'insert String>>, Option<Eq<phone, &'insert String>>, Option<Eq<website, &'insert String>>, Option<Eq<organization, &'insert String>>, Option<Eq<experience, &'insert Experience>>, Option<Eq<membership, &'insert Membership>>, Option<Eq<member_years, &'insert Vec<Option<i32>>>>, Option<Eq<member_since, &'insert NaiveDate>>, Option<Eq<permacoins, &'insert Vec<Option<i32>>>>) as Insertable<table>>::Values
fn values( self, ) -> <(Option<Eq<id, &'insert Uuid>>, Option<Eq<salutation, &'insert Salutation>>, Option<Eq<title, &'insert String>>, Option<Eq<country, &'insert String>>, Option<Eq<phone, &'insert String>>, Option<Eq<website, &'insert String>>, Option<Eq<organization, &'insert String>>, Option<Eq<experience, &'insert Experience>>, Option<Eq<membership, &'insert Membership>>, Option<Eq<member_years, &'insert Vec<Option<i32>>>>, Option<Eq<member_since, &'insert NaiveDate>>, Option<Eq<permacoins, &'insert Vec<Option<i32>>>>) 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 Users
impl Insertable<table> for Users
§type Values = <(Option<Grouped<Eq<id, <Uuid as AsExpression<<id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<salutation, <Salutation as AsExpression<<salutation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<title, <String as AsExpression<<title as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<country, <String as AsExpression<<country as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<phone, <String as AsExpression<<phone as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<website, <String as AsExpression<<website as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<organization, <String as AsExpression<<organization as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<experience, <Experience as AsExpression<<experience as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<membership, <Membership as AsExpression<<membership as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<member_years, <Vec<Option<i32>> as AsExpression<<member_years as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<member_since, <NaiveDate as AsExpression<<member_since as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<permacoins, <Vec<Option<i32>> as AsExpression<<permacoins as Expression>::SqlType>>::Expression>>>) as Insertable<table>>::Values
type Values = <(Option<Grouped<Eq<id, <Uuid as AsExpression<<id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<salutation, <Salutation as AsExpression<<salutation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<title, <String as AsExpression<<title as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<country, <String as AsExpression<<country as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<phone, <String as AsExpression<<phone as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<website, <String as AsExpression<<website as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<organization, <String as AsExpression<<organization as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<experience, <Experience as AsExpression<<experience as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<membership, <Membership as AsExpression<<membership as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<member_years, <Vec<Option<i32>> as AsExpression<<member_years as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<member_since, <NaiveDate as AsExpression<<member_since as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<permacoins, <Vec<Option<i32>> as AsExpression<<permacoins as Expression>::SqlType>>::Expression>>>) as Insertable<table>>::Values
The
VALUES
clause to insert these records Read moresource§fn values(
self,
) -> <(Option<Eq<id, Uuid>>, Option<Eq<salutation, Salutation>>, Option<Eq<title, String>>, Option<Eq<country, String>>, Option<Eq<phone, String>>, Option<Eq<website, String>>, Option<Eq<organization, String>>, Option<Eq<experience, Experience>>, Option<Eq<membership, Membership>>, Option<Eq<member_years, Vec<Option<i32>>>>, Option<Eq<member_since, NaiveDate>>, Option<Eq<permacoins, Vec<Option<i32>>>>) as Insertable<table>>::Values
fn values( self, ) -> <(Option<Eq<id, Uuid>>, Option<Eq<salutation, Salutation>>, Option<Eq<title, String>>, Option<Eq<country, String>>, Option<Eq<phone, String>>, Option<Eq<website, String>>, Option<Eq<organization, String>>, Option<Eq<experience, Experience>>, Option<Eq<membership, Membership>>, Option<Eq<member_years, Vec<Option<i32>>>>, Option<Eq<member_since, NaiveDate>>, Option<Eq<permacoins, Vec<Option<i32>>>>) 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, salutation, title, country, phone, website, organization, experience, membership, member_years, member_since, permacoins)
type AllColumns = (id, salutation, title, country, phone, website, organization, experience, membership, member_years, member_since, permacoins)
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 SelectableExpression<table> for country
impl SelectableExpression<table> for experience
impl SelectableExpression<table> for id
impl SelectableExpression<table> for member_since
impl SelectableExpression<table> for member_years
impl SelectableExpression<table> for membership
impl SelectableExpression<table> for organization
impl SelectableExpression<table> for permacoins
impl SelectableExpression<table> for phone
impl SelectableExpression<table> for salutation
impl SelectableExpression<table> for star
impl SelectableExpression<table> for title
impl SelectableExpression<table> for website
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 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 Users
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