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, DrawingShapeType, Nullable<Date>, Nullable<Date>, Float, Float, Float, Integer, Integer, Jsonb, Uuid, Text)
type SqlType = (Uuid, DrawingShapeType, Nullable<Date>, Nullable<Date>, Float, Float, Float, Integer, Integer, Jsonb, Uuid, Text)
The SQL type of
Self::Query
§type Query = SelectStatement<FromClause<table>, DefaultSelectClause<FromClause<table>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause>
type Query = SelectStatement<FromClause<table>, DefaultSelectClause<FromClause<table>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause>
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 tablewhere
<table as AsQuery>::Query: Insertable<T>,
impl<T> Insertable<T> for tablewhere <table as AsQuery>::Query: Insertable<T>,
source§impl<'insert> Insertable<table> for &'insert Drawing
impl<'insert> Insertable<table> for &'insert Drawing
§type Values = <(Option<Grouped<Eq<id, <&'insert Uuid as AsExpression<<id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<shape_type, <&'insert DrawingShapeType as AsExpression<<shape_type as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<add_date, <&'insert NaiveDate as AsExpression<<add_date as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<remove_date, <&'insert NaiveDate as AsExpression<<remove_date as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<rotation, <&'insert f32 as AsExpression<<rotation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<scale_x, <&'insert f32 as AsExpression<<scale_x as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<scale_y, <&'insert f32 as AsExpression<<scale_y as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<x, <&'insert i32 as AsExpression<<x as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<y, <&'insert i32 as AsExpression<<y as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<properties, <&'insert Value as AsExpression<<properties as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<layer_id, <&'insert Uuid as AsExpression<<layer_id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<notes, <&'insert String as AsExpression<<notes 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<shape_type, <&'insert DrawingShapeType as AsExpression<<shape_type as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<add_date, <&'insert NaiveDate as AsExpression<<add_date as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<remove_date, <&'insert NaiveDate as AsExpression<<remove_date as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<rotation, <&'insert f32 as AsExpression<<rotation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<scale_x, <&'insert f32 as AsExpression<<scale_x as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<scale_y, <&'insert f32 as AsExpression<<scale_y as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<x, <&'insert i32 as AsExpression<<x as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<y, <&'insert i32 as AsExpression<<y as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<properties, <&'insert Value as AsExpression<<properties as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<layer_id, <&'insert Uuid as AsExpression<<layer_id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<notes, <&'insert String as AsExpression<<notes 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<shape_type, &'insert DrawingShapeType>>, Option<Eq<add_date, &'insert NaiveDate>>, Option<Eq<remove_date, &'insert NaiveDate>>, Option<Eq<rotation, &'insert f32>>, Option<Eq<scale_x, &'insert f32>>, Option<Eq<scale_y, &'insert f32>>, Option<Eq<x, &'insert i32>>, Option<Eq<y, &'insert i32>>, Option<Eq<properties, &'insert Value>>, Option<Eq<layer_id, &'insert Uuid>>, Option<Eq<notes, &'insert String>>) as Insertable<table>>::Values
fn values( self ) -> <(Option<Eq<id, &'insert Uuid>>, Option<Eq<shape_type, &'insert DrawingShapeType>>, Option<Eq<add_date, &'insert NaiveDate>>, Option<Eq<remove_date, &'insert NaiveDate>>, Option<Eq<rotation, &'insert f32>>, Option<Eq<scale_x, &'insert f32>>, Option<Eq<scale_y, &'insert f32>>, Option<Eq<x, &'insert i32>>, Option<Eq<y, &'insert i32>>, Option<Eq<properties, &'insert Value>>, Option<Eq<layer_id, &'insert Uuid>>, Option<Eq<notes, &'insert String>>) as Insertable<table>>::Values
Construct
Self::Values
Read moresource§fn insert_into(
self,
table: T
) -> InsertStatement<T, Self::Values, Insert, NoReturningClause>where
T: Table,
Self: Sized,
fn insert_into( self, table: T ) -> InsertStatement<T, Self::Values, Insert, NoReturningClause>where T: Table, Self: Sized,
Insert
self
into a given table. Read moresource§impl Insertable<table> for Drawing
impl Insertable<table> for Drawing
§type Values = <(Option<Grouped<Eq<id, <Uuid as AsExpression<<id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<shape_type, <DrawingShapeType as AsExpression<<shape_type as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<add_date, <NaiveDate as AsExpression<<add_date as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<remove_date, <NaiveDate as AsExpression<<remove_date as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<rotation, <f32 as AsExpression<<rotation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<scale_x, <f32 as AsExpression<<scale_x as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<scale_y, <f32 as AsExpression<<scale_y as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<x, <i32 as AsExpression<<x as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<y, <i32 as AsExpression<<y as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<properties, <Value as AsExpression<<properties as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<layer_id, <Uuid as AsExpression<<layer_id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<notes, <String as AsExpression<<notes 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<shape_type, <DrawingShapeType as AsExpression<<shape_type as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<add_date, <NaiveDate as AsExpression<<add_date as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<remove_date, <NaiveDate as AsExpression<<remove_date as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<rotation, <f32 as AsExpression<<rotation as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<scale_x, <f32 as AsExpression<<scale_x as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<scale_y, <f32 as AsExpression<<scale_y as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<x, <i32 as AsExpression<<x as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<y, <i32 as AsExpression<<y as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<properties, <Value as AsExpression<<properties as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<layer_id, <Uuid as AsExpression<<layer_id as Expression>::SqlType>>::Expression>>>, Option<Grouped<Eq<notes, <String as AsExpression<<notes 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<shape_type, DrawingShapeType>>, Option<Eq<add_date, NaiveDate>>, Option<Eq<remove_date, NaiveDate>>, Option<Eq<rotation, f32>>, Option<Eq<scale_x, f32>>, Option<Eq<scale_y, f32>>, Option<Eq<x, i32>>, Option<Eq<y, i32>>, Option<Eq<properties, Value>>, Option<Eq<layer_id, Uuid>>, Option<Eq<notes, String>>) as Insertable<table>>::Values
fn values( self ) -> <(Option<Eq<id, Uuid>>, Option<Eq<shape_type, DrawingShapeType>>, Option<Eq<add_date, NaiveDate>>, Option<Eq<remove_date, NaiveDate>>, Option<Eq<rotation, f32>>, Option<Eq<scale_x, f32>>, Option<Eq<scale_y, f32>>, Option<Eq<x, i32>>, Option<Eq<y, i32>>, Option<Eq<properties, Value>>, Option<Eq<layer_id, Uuid>>, Option<Eq<notes, String>>) as Insertable<table>>::Values
Construct
Self::Values
Read moresource§fn insert_into(
self,
table: T
) -> InsertStatement<T, Self::Values, Insert, NoReturningClause>where
T: Table,
Self: Sized,
fn insert_into( self, table: T ) -> InsertStatement<T, Self::Values, Insert, NoReturningClause>where T: Table, Self: Sized,
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, NotSpecialized> for tablewhere
DB: Backend,
<table as StaticQueryFragment>::Component: QueryFragment<DB>,
impl<DB> QueryFragment<DB, NotSpecialized> for tablewhere DB: Backend, <table as StaticQueryFragment>::Component: QueryFragment<DB>,
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, shape_type, add_date, remove_date, rotation, scale_x, scale_y, x, y, properties, layer_id, notes)
type AllColumns = (id, shape_type, add_date, remove_date, rotation, scale_x, scale_y, x, y, properties, layer_id, notes)
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 tablewhere Alias<S>: JoinTo<table>,
impl<Left, Right, Kind> JoinTo<Join<Left, Right, Kind>> for tablewhere Join<Left, Right, Kind>: JoinTo<table>, Left: QuerySource, Right: QuerySource,
impl<S> JoinTo<Only<S>> for tablewhere Only<S>: JoinTo<table>,
impl JoinTo<table> for table
impl JoinTo<table> for table
impl SelectableExpression<table> for add_date
impl SelectableExpression<table> for id
impl SelectableExpression<table> for layer_id
impl SelectableExpression<table> for notes
impl SelectableExpression<table> for properties
impl SelectableExpression<table> for remove_date
impl SelectableExpression<table> for rotation
impl SelectableExpression<table> for scale_x
impl SelectableExpression<table> for scale_y
impl SelectableExpression<table> for shape_type
impl SelectableExpression<table> for star
impl SelectableExpression<table> for x
impl SelectableExpression<table> for y
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 TableNotEqual<table> for table
impl TableNotEqual<table> for table
impl UndecoratedInsertRecord<table> for Drawing
Auto Trait Implementations§
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 T1where
T1: TableNotEqual<T2> + Table,
T2: Table,
impl<T1, T2> AppearsInFromClause<T2> for T1where T1: TableNotEqual<T2> + Table, T2: Table,
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>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause>> + AsQuery,
SelectStatement<FromClause<T>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause>: 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>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause>> + AsQuery, SelectStatement<FromClause<T>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause>: BoxedDsl<'a, DB>, <T as QuerySource>::DefaultSelection: Expression<SqlType = <T as AsQuery>::SqlType> + ValidGrouping<()>, <T as AsQuery>::SqlType: TypedExpressionType,
§type Output = <SelectStatement<FromClause<T>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause> as BoxedDsl<'a, DB>>::Output
type Output = <SelectStatement<FromClause<T>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause> 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> 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>where
Rhs: AsQuery<SqlType = <<T as CombineDsl>::Query as Query>::SqlType>,
fn union<Rhs>( self, rhs: Rhs ) -> CombinationClause<Union, Distinct, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>where Rhs: AsQuery<SqlType = <<T as CombineDsl>::Query as Query>::SqlType>,
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>where
Rhs: AsQuery<SqlType = <<T as CombineDsl>::Query as Query>::SqlType>,
fn union_all<Rhs>( self, rhs: Rhs ) -> CombinationClause<Union, All, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>where Rhs: AsQuery<SqlType = <<T as CombineDsl>::Query as Query>::SqlType>,
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>where
Rhs: AsQuery<SqlType = <<T as CombineDsl>::Query as Query>::SqlType>,
fn intersect<Rhs>( self, rhs: Rhs ) -> CombinationClause<Intersect, Distinct, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>where Rhs: AsQuery<SqlType = <<T as CombineDsl>::Query as Query>::SqlType>,
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>where
Rhs: AsQuery<SqlType = <<T as CombineDsl>::Query as Query>::SqlType>,
fn intersect_all<Rhs>( self, rhs: Rhs ) -> CombinationClause<Intersect, All, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>where Rhs: AsQuery<SqlType = <<T as CombineDsl>::Query as Query>::SqlType>,
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>where
Rhs: AsQuery<SqlType = <<T as CombineDsl>::Query as Query>::SqlType>,
fn except<Rhs>( self, rhs: Rhs ) -> CombinationClause<Except, Distinct, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>where Rhs: AsQuery<SqlType = <<T as CombineDsl>::Query as Query>::SqlType>,
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>where
Rhs: AsQuery<SqlType = <<T as CombineDsl>::Query as Query>::SqlType>,
fn except_all<Rhs>( self, rhs: Rhs ) -> CombinationClause<Except, All, <T as CombineDsl>::Query, <Rhs as AsQuery>::Query>where Rhs: AsQuery<SqlType = <<T as CombineDsl>::Query as Query>::SqlType>,
Combine two queries using a SQL
EXCEPT ALL
source§impl<T> DistinctDsl for Twhere
T: AsQuery<Query = SelectStatement<FromClause<T>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause>> + 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>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause>> + Table, <T as QuerySource>::DefaultSelection: Expression<SqlType = <T as AsQuery>::SqlType> + ValidGrouping<()>, <T as AsQuery>::SqlType: TypedExpressionType,
§type Output = <SelectStatement<FromClause<T>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause> as DistinctDsl>::Output
type Output = <SelectStatement<FromClause<T>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause> as DistinctDsl>::Output
The type returned by
.distinct
source§fn distinct(
self
) -> <SelectStatement<FromClause<T>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause> as DistinctDsl>::Output
fn distinct( self ) -> <SelectStatement<FromClause<T>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause> as DistinctDsl>::Output
See the trait documentation.
source§impl<Conn, DB, T> ExecuteDsl<Conn, DB> for Twhere
Conn: AsyncConnection<Backend = DB>,
DB: Backend,
T: QueryFragment<DB, NotSpecialized> + QueryId + Send,
impl<Conn, DB, T> ExecuteDsl<Conn, DB> for Twhere Conn: AsyncConnection<Backend = DB>, DB: Backend, T: QueryFragment<DB, NotSpecialized> + QueryId + Send,
source§fn execute<'query, 'conn>(
query: T,
conn: &'conn mut Conn
) -> <Conn as AsyncConnection>::ExecuteFuture<'conn, 'query>where
T: 'query,
fn execute<'query, 'conn>( 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 Twhere
Conn: Connection<Backend = DB>,
DB: Backend,
T: QueryFragment<DB, NotSpecialized> + QueryId,
impl<Conn, DB, T> ExecuteDsl<Conn, DB> for Twhere Conn: Connection<Backend = DB>, DB: Backend, T: QueryFragment<DB, NotSpecialized> + QueryId,
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> IntoSql for T
impl<T> IntoSql for T
source§fn into_sql<T>(self) -> Self::Expressionwhere
Self: AsExpression<T> + Sized,
T: SqlType + TypedExpressionType,
fn into_sql<T>(self) -> Self::Expressionwhere Self: AsExpression<T> + Sized, T: SqlType + TypedExpressionType,
Convert
self
to an expression for Diesel’s query builder. Read moresource§fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expressionwhere
&'a Self: AsExpression<T>,
T: SqlType + TypedExpressionType,
fn as_sql<'a, T>(&'a self) -> <&'a Self as AsExpression<T>>::Expressionwhere &'a Self: AsExpression<T>, T: SqlType + TypedExpressionType,
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>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause>> + 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>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause>> + AsQuery, <T as QuerySource>::DefaultSelection: Expression<SqlType = <T as AsQuery>::SqlType> + ValidGrouping<()>, <T as AsQuery>::SqlType: TypedExpressionType,
§type Output = <SelectStatement<FromClause<T>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause> as LockingDsl<Lock>>::Output
type Output = <SelectStatement<FromClause<T>, DefaultSelectClause<FromClause<T>>, NoDistinctClause, NoWhereClause, NoOrderClause, LimitOffsetClause<NoLimitClause, NoOffsetClause>, NoGroupByClause, NoHavingClause, NoLockingClause> 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::Outputwhere
Self: SelectDsl<CountStar>,
fn count(self) -> Self::Outputwhere Self: SelectDsl<CountStar>,
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::Outputwhere
DB: Backend,
Self: BoxedDsl<'a, DB>,
fn into_boxed<'a, DB>(self) -> Self::Outputwhere DB: Backend, Self: BoxedDsl<'a, DB>,
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<'query, 'conn>(
self,
conn: &'conn mut Conn
) -> <Conn as AsyncConnection>::ExecuteFuture<'conn, 'query>where
Conn: AsyncConnection + Send,
Self: ExecuteDsl<Conn, <Conn as AsyncConnection>::Backend> + 'query,
fn execute<'query, 'conn>( self, conn: &'conn mut Conn ) -> <Conn as AsyncConnection>::ExecuteFuture<'conn, 'query>where Conn: AsyncConnection + Send, Self: ExecuteDsl<Conn, <Conn as AsyncConnection>::Backend> + 'query,
Executes the given command, returning the number of rows affected. Read more
source§fn load<'query, U, 'conn>(
self,
conn: &'conn mut Conn
) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U, Global>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U, Global>>>where
U: Send,
Conn: AsyncConnection,
Self: LoadQuery<'query, Conn, U> + 'query,
fn load<'query, U, 'conn>( self, conn: &'conn mut Conn ) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U, Global>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U, Global>>>where U: Send, Conn: AsyncConnection, Self: LoadQuery<'query, Conn, U> + 'query,
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>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>, Global>>)) -> Result<U, Error>>, fn(_: Self::Stream<'conn>) -> Map<StreamFuture<Pin<Box<Self::Stream<'conn>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>, Global>>)) -> Result<U, Error>>>where
U: Send + 'conn,
Conn: AsyncConnection,
Self: LoadQuery<'query, Conn, U> + 'query,
fn get_result<'query, 'conn, U>( self, conn: &'conn mut Conn ) -> AndThen<Self::LoadFuture<'conn>, Map<StreamFuture<Pin<Box<Self::Stream<'conn>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>, Global>>)) -> Result<U, Error>>, fn(_: Self::Stream<'conn>) -> Map<StreamFuture<Pin<Box<Self::Stream<'conn>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<Self::Stream<'conn>, Global>>)) -> Result<U, Error>>>where U: Send + 'conn, Conn: AsyncConnection, Self: LoadQuery<'query, Conn, U> + 'query,
Runs the command, and returns the affected row. Read more
source§fn get_results<'query, U, 'conn>(
self,
conn: &'conn mut Conn
) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U, Global>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U, Global>>>where
U: Send,
Conn: AsyncConnection,
Self: LoadQuery<'query, Conn, U> + 'query,
fn get_results<'query, U, 'conn>( self, conn: &'conn mut Conn ) -> AndThen<Self::LoadFuture<'conn>, TryCollect<Self::Stream<'conn>, Vec<U, Global>>, fn(_: Self::Stream<'conn>) -> TryCollect<Self::Stream<'conn>, Vec<U, Global>>>where U: Send, Conn: AsyncConnection, Self: LoadQuery<'query, Conn, U> + 'query,
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>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>, Global>>)) -> 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>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>, Global>>)) -> Result<U, Error>>>where
U: Send + 'conn,
Conn: AsyncConnection,
Self: LimitDsl,
Self::Output: LoadQuery<'query, Conn, U> + Send + 'query,
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>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>, Global>>)) -> 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>, Global>>>, fn(_: (Option<Result<U, Error>>, Pin<Box<<Self::Output as LoadQuery<'query, Conn, U>>::Stream<'conn>, Global>>)) -> Result<U, Error>>>where U: Send + 'conn, Conn: AsyncConnection, Self: LimitDsl, Self::Output: LoadQuery<'query, Conn, U> + Send + 'query,
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, <Conn as Connection>::Backend>,
fn execute(self, conn: &mut Conn) -> Result<usize, Error>where Conn: Connection, Self: ExecuteDsl<Conn, <Conn as Connection>::Backend>,
Executes the given command, returning the number of rows affected. Read more
source§fn load<'query, U>(self, conn: &mut Conn) -> Result<Vec<U, Global>, Error>where
Self: LoadQuery<'query, Conn, U, DefaultLoadingMode>,
fn load<'query, U>(self, conn: &mut Conn) -> Result<Vec<U, Global>, Error>where Self: LoadQuery<'query, Conn, U, DefaultLoadingMode>,
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, DefaultLoadingMode>,
fn get_result<'query, U>(self, conn: &mut Conn) -> Result<U, Error>where Self: LoadQuery<'query, Conn, U, DefaultLoadingMode>,
Runs the command, and returns the affected row. Read more