Class MinBy


public class MinBy extends AggregateFunction
MIN_BY(value, sort_key) — a two-argument aggregate returning the value from the row whose sort_key is the minimum. Rows with a NULL sort key are ignored; on ties the latest such row wins (Snowflake semantics). The returned value may itself be NULL, and NULL only signals "no qualifying row" when the group is empty or every sort key is NULL.
  • Constructor Details

    • MinBy

      public MinBy()
  • Method Details

    • createAccumulator

      public AggregateFunction.Accumulator createAccumulator()
      Description copied from class: AggregateFunction
      Creates the fresh, empty per-group state for one evaluation of this aggregate; the executor makes one per group (or per window partition) and never shares them.
      Specified by:
      createAccumulator in class AggregateFunction
      Returns:
      a new accumulator starting from this aggregate's empty-group state
    • geoRejection

      public SemiStructuredRejection geoRejection(int position)
      Neither half takes a GEOSPATIAL value, where both take an OBJECT — see MaxBy.geoRejection(int) for the measurement; MIN_BY(n, g) was the spelling that named the SORT-KEY half.
      Overrides:
      geoRejection in class BuiltInFunction
      Parameters:
      position - the zero-based argument position being asked about
      Returns:
      the refusal this position gives a GEOGRAPHY or GEOMETRY value; by default, the union of the two semi-structured answers
    • evaluate

      public Object evaluate(List<Object> args)
      Description copied from class: BuiltInFunction
      Computes the function's result over its already-evaluated argument values. A SQL NULL argument arrives as Java null, and returning null makes the SQL result NULL.
      Specified by:
      evaluate in class BuiltInFunction
      Parameters:
      args - the argument values, in call order
      Returns:
      the function's value for these arguments, or null for SQL NULL
    • getMinArgCount

      public int getMinArgCount()
      Description copied from class: BuiltInFunction
      The fewest arguments a call to this function may pass; fewer is an argument-count error.
      Specified by:
      getMinArgCount in class BuiltInFunction
      Returns:
      the minimum accepted argument count
    • getMaxArgCount

      public int getMaxArgCount()
      Description copied from class: BuiltInFunction
      The most arguments a call to this function may pass; Integer.MAX_VALUE marks a variadic function (see BuiltInFunction.isVariadic()).
      Specified by:
      getMaxArgCount in class BuiltInFunction
      Returns:
      the maximum accepted argument count