Interface RelBuilder.AggCall

Enclosing class:
RelBuilder

public static interface RelBuilder.AggCall
Information necessary to create a call to an aggregate function.
See Also:
RelBuilder.aggregateCall(org.apache.calcite.sql.SqlAggFunction, boolean, org.apache.calcite.rex.RexNode, java.lang.String, org.apache.calcite.rex.RexNode...)
  • Method Summary

    Modifier and Type Method Description
    RelBuilder.AggCall approximate​(boolean approximate)
    Returns a copy of this AggCall that may return approximate results if approximate is true.
    RelBuilder.AggCall as​(@Nullable String alias)
    Returns a copy of this AggCall with a given alias.
    default RelBuilder.AggCall distinct()
    Returns a copy of this AggCall that is distinct.
    RelBuilder.AggCall distinct​(boolean distinct)
    Returns a copy of this AggCall that is optionally distinct.
    RelBuilder.AggCall filter​(@Nullable RexNode condition)
    Returns a copy of this AggCall that applies a filter before aggregating values.
    RelBuilder.AggCall ignoreNulls​(boolean ignoreNulls)
    Returns a copy of this AggCall that ignores nulls.
    RelBuilder.OverCall over()
    Converts this aggregate call to a windowed aggregate call.
    RelBuilder.AggCall sort​(Iterable<RexNode> orderKeys)
    Returns a copy of this AggCall that sorts its input values by orderKeys before aggregating, as in SQL's WITHIN GROUP clause.
    default RelBuilder.AggCall sort​(RexNode... orderKeys)
    Returns a copy of this AggCall that sorts its input values by orderKeys before aggregating, as in SQL's WITHIN GROUP clause.
    RelBuilder.AggCall unique​(@Nullable Iterable<RexNode> distinctKeys)
    Returns a copy of this AggCall that makes its input values unique by distinctKeys before aggregating, as in SQL's WITHIN DISTINCT clause.
    default RelBuilder.AggCall unique​(RexNode... distinctKeys)
    Returns a copy of this AggCall that makes its input values unique by distinctKeys before aggregating, as in SQL's WITHIN DISTINCT clause.
  • Method Details

    • filter

      RelBuilder.AggCall filter​(@Nullable RexNode condition)
      Returns a copy of this AggCall that applies a filter before aggregating values.
    • sort

      RelBuilder.AggCall sort​(Iterable<RexNode> orderKeys)
      Returns a copy of this AggCall that sorts its input values by orderKeys before aggregating, as in SQL's WITHIN GROUP clause.
    • sort

      default RelBuilder.AggCall sort​(RexNode... orderKeys)
      Returns a copy of this AggCall that sorts its input values by orderKeys before aggregating, as in SQL's WITHIN GROUP clause.
    • unique

      RelBuilder.AggCall unique​(@Nullable Iterable<RexNode> distinctKeys)
      Returns a copy of this AggCall that makes its input values unique by distinctKeys before aggregating, as in SQL's WITHIN DISTINCT clause.
    • unique

      default RelBuilder.AggCall unique​(RexNode... distinctKeys)
      Returns a copy of this AggCall that makes its input values unique by distinctKeys before aggregating, as in SQL's WITHIN DISTINCT clause.
    • approximate

      RelBuilder.AggCall approximate​(boolean approximate)
      Returns a copy of this AggCall that may return approximate results if approximate is true.
    • ignoreNulls

      RelBuilder.AggCall ignoreNulls​(boolean ignoreNulls)
      Returns a copy of this AggCall that ignores nulls.
    • as

      RelBuilder.AggCall as​(@Nullable String alias)
      Returns a copy of this AggCall with a given alias.
    • distinct

      RelBuilder.AggCall distinct​(boolean distinct)
      Returns a copy of this AggCall that is optionally distinct.
    • distinct

      default RelBuilder.AggCall distinct()
      Returns a copy of this AggCall that is distinct.
    • over

      Converts this aggregate call to a windowed aggregate call.