Class SelectGroups.Grouped

java.lang.Object
org.h2.command.query.SelectGroups
org.h2.command.query.SelectGroups.Grouped
Enclosing class:
SelectGroups

private static final class SelectGroups.Grouped extends SelectGroups
  • Field Details

    • groupIndex

      private final int[] groupIndex
    • groupByData

      private TreeMap<ValueRow,Object[]> groupByData
      Map of group-by key to group-by expression data e.g. AggregateData
    • currentGroupsKey

      private ValueRow currentGroupsKey
      Key into groupByData that produces currentGroupByExprData. Not used in lazy mode.
    • cursor

      private Iterator<Map.Entry<ValueRow,Object[]>> cursor
      Cursor for next() method.
  • Constructor Details

  • Method Details

    • reset

      public void reset()
      Description copied from class: SelectGroups
      Resets this group data for reuse.
      Overrides:
      reset in class SelectGroups
    • nextSource

      public void nextSource()
      Description copied from class: SelectGroups
      Invoked for each source row to evaluate group key and setup all necessary data for aggregates.
      Specified by:
      nextSource in class SelectGroups
    • updateCurrentGroupExprData

      void updateCurrentGroupExprData()
      Description copied from class: SelectGroups
      Update group-by data specified by implementation.
      Specified by:
      updateCurrentGroupExprData in class SelectGroups
    • done

      public void done()
      Description copied from class: SelectGroups
      Invoked after all source rows are evaluated.
      Overrides:
      done in class SelectGroups
    • next

      public ValueRow next()
      Description copied from class: SelectGroups
      Returns the key of the next group.
      Specified by:
      next in class SelectGroups
      Returns:
      the key of the next group, or null
    • remove

      public void remove()
      Description copied from class: SelectGroups
      Removes the data for the current key.
      Overrides:
      remove in class SelectGroups
      See Also:
    • resetLazy

      public void resetLazy()
      Description copied from class: SelectGroups
      Resets this group data for reuse in lazy mode.
      Overrides:
      resetLazy in class SelectGroups