@Override public Expr visitUnaryOperator(ExprNormalizedResult ctx, Stack<Expr> stack, UnaryOperator expr) throws PlanningException { super.visitUnaryOperator(ctx, stack, expr); if (isAggregationFunction(expr.getChild())) { // Get an anonymous column name and replace the aggregation function by the column name String refName = ctx.block.namedExprsMgr.addExpr(expr.getChild()); ctx.aggExprs.add(new NamedExpr(expr.getChild(), refName)); expr.setChild(new ColumnReferenceExpr(refName)); } return expr; }