pub struct JoinExpr {
pub schema: String,
pub table: String,
pub alias: String,
pub conditions: Vec<(String, String)>,
pub selects: Vec<SelectExpr>,
pub group_by: Vec<String>,
pub use_final: bool,
pub is_aggregate: bool,
pub target_cube: String,
pub join_field: String,
pub join_type: JoinType,
}Expand description
A resolved JOIN to another table, appended to the outer query.
Fields§
§schema: String§table: String§alias: StringSQL alias for this join, e.g. “_j0”, “_j1”
conditions: Vec<(String, String)>(main_table_col, joined_table_col) ON conditions
selects: Vec<SelectExpr>Fields requested from the joined table
group_by: Vec<String>Non-aggregate columns for GROUP BY (mode B only)
use_final: boolAppend FINAL for ReplacingMergeTree targets (mode A)
is_aggregate: booltrue = target is AggregatingMergeTree, use subquery JOIN (mode B)
target_cube: StringTarget cube name for result mapping
join_field: StringGraphQL field name for result nesting, e.g. “joinBuyToken”
join_type: JoinTypeJOIN type — defaults to Left for backward compatibility.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for JoinExpr
impl RefUnwindSafe for JoinExpr
impl Send for JoinExpr
impl Sync for JoinExpr
impl Unpin for JoinExpr
impl UnsafeUnpin for JoinExpr
impl UnwindSafe for JoinExpr
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