pub struct AggregationSqlGenerator { /* private fields */ }Expand description
Aggregation SQL generator
Implementations§
Source§impl AggregationSqlGenerator
impl AggregationSqlGenerator
Sourcepub const fn new(database_type: DatabaseType) -> Self
pub const fn new(database_type: DatabaseType) -> Self
Create new SQL generator for specific database
Sourcepub fn generate(&self, plan: &AggregationPlan) -> Result<AggregationSql>
pub fn generate(&self, plan: &AggregationPlan) -> Result<AggregationSql>
Sourcepub fn build_where_clause(
&self,
where_clause: &WhereClause,
metadata: &FactTableMetadata,
) -> Result<String>
pub fn build_where_clause( &self, where_clause: &WhereClause, metadata: &FactTableMetadata, ) -> Result<String>
Build WHERE clause SQL
Handles two types of filterable fields:
- Denormalized filters (direct columns): WHERE customer_id = $1
- Dimensions (JSONB paths): WHERE data->>‘category’ = $1
Auto Trait Implementations§
impl Freeze for AggregationSqlGenerator
impl RefUnwindSafe for AggregationSqlGenerator
impl Send for AggregationSqlGenerator
impl Sync for AggregationSqlGenerator
impl Unpin for AggregationSqlGenerator
impl UnsafeUnpin for AggregationSqlGenerator
impl UnwindSafe for AggregationSqlGenerator
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