Skip to content

Commit d30ae90

Browse files
committed
support FILTER Aggregates
1 parent 044a79b commit d30ae90

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

datafusion/sql/src/expr/function.rs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,9 +146,14 @@ impl<'a, S: ContextProvider> SqlToRel<'a, S> {
146146
let order_by = (!order_by.is_empty()).then_some(order_by);
147147
let args =
148148
self.function_args_to_expr(function.args, schema, planner_context)?;
149+
let filter: Option<Box<Expr>> = function
150+
.filter
151+
.map(|e| self.sql_expr_to_logical_expr(*e, schema, planner_context))
152+
.transpose()?
153+
.map(Box::new);
149154

150155
return Ok(Expr::AggregateFunction(expr::AggregateFunction::new(
151-
fun, args, distinct, None, order_by,
156+
fun, args, distinct, filter, order_by,
152157
)));
153158
};
154159

0 commit comments

Comments
 (0)