Function mz_sql::plan::query::try_push_projection_order_by
source ยท fn try_push_projection_order_by(
expr: &mut HirRelationExpr,
project: &mut Vec<usize>,
order_by: &mut Vec<ColumnOrder>,
) -> bool
Expand description
Attempts to push a projection through an order by.
The returned bool indicates whether the pushdown was successful or not.
Successful pushdown requires that all the columns referenced in order_by
are included in project
.
When successful, expr
is wrapped in a projection node, order_by
is
rewritten to account for the pushed-down projection, and project
is
replaced with the trivial projection. When unsuccessful, no changes are made
to any of the inputs.