pub struct Query {
pub select: Vec<String>,
pub table: String,
pub table_alias: Option<String>,
pub joins: Vec<JoinSpec>,
pub predicate: Option<Expr>,
pub order_by: Vec<(String, Order)>,
pub limit: Option<usize>,
pub group_by: Vec<String>,
pub aggregates: Vec<Aggregate>,
pub having: Option<Expr>,
pub use_index: Option<String>,
}Fields§
§select: Vec<String>§table: String§table_alias: Option<String>§joins: Vec<JoinSpec>§predicate: Option<Expr>§order_by: Vec<(String, Order)>§limit: Option<usize>§group_by: Vec<String>§aggregates: Vec<Aggregate>§having: Option<Expr>§use_index: Option<String>Implementations§
Source§impl Query
impl Query
pub fn select(cols: &[&str]) -> Self
pub fn from(self, table: &str) -> Self
pub fn alias(self, alias: &str) -> Self
pub fn inner_join( self, table: &str, left_column: &str, right_column: &str, ) -> Self
pub fn left_join( self, table: &str, left_column: &str, right_column: &str, ) -> Self
pub fn right_join( self, table: &str, left_column: &str, right_column: &str, ) -> Self
pub fn cross_join(self, table: &str) -> Self
pub fn with_last_join_alias(self, alias: &str) -> Self
pub fn where_(self, expr: Expr) -> Self
pub fn order_by(self, col: &str, order: Order) -> Self
pub fn limit(self, n: usize) -> Self
pub fn group_by(self, cols: &[&str]) -> Self
pub fn aggregate(self, aggregate: Aggregate) -> Self
pub fn having(self, expr: Expr) -> Self
pub fn use_index(self, index_name: &str) -> Self
Trait Implementations§
impl StructuralPartialEq for Query
Auto Trait Implementations§
impl Freeze for Query
impl RefUnwindSafe for Query
impl Send for Query
impl Sync for Query
impl Unpin for Query
impl UnsafeUnpin for Query
impl UnwindSafe for Query
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more