Class: Parse::SortableGroupBy

Inherits:
GroupBy
  • Object
show all
Defined in:
lib/parse/query.rb

Overview

Sortable version of GroupBy that returns GroupedResult objects instead of plain hashes. Provides the same aggregation methods but with sorting capabilities.

Instance Method Summary collapse

Methods inherited from GroupBy

#initialize, #order, #pipeline, #raw, #sort

Constructor Details

This class inherits a constructor from Parse::GroupBy

Instance Method Details

#average(field) ⇒ GroupedResult Also known as: avg

Calculate average of a field for each group.

Parameters:

  • field (Symbol, String)

    the field to average within each group.

Returns:



7295
7296
7297
7298
# File 'lib/parse/query.rb', line 7295

def average(field)
  results = super
  GroupedResult.new(results, "average")
end

#countGroupedResult

Count the number of items in each group.

Returns:



7279
7280
7281
7282
# File 'lib/parse/query.rb', line 7279

def count
  results = super
  GroupedResult.new(results, "count")
end

#listGroupedResult

Collect Parse::Object instances per group.

Returns:



7320
7321
7322
7323
# File 'lib/parse/query.rb', line 7320

def list
  results = super
  GroupedResult.new(results, "list")
end

#max(field) ⇒ GroupedResult

Find maximum value of a field for each group.

Parameters:

  • field (Symbol, String)

    the field to find maximum for within each group.

Returns:



7313
7314
7315
7316
# File 'lib/parse/query.rb', line 7313

def max(field)
  results = super
  GroupedResult.new(results, "max")
end

#min(field) ⇒ GroupedResult

Find minimum value of a field for each group.

Parameters:

  • field (Symbol, String)

    the field to find minimum for within each group.

Returns:



7305
7306
7307
7308
# File 'lib/parse/query.rb', line 7305

def min(field)
  results = super
  GroupedResult.new(results, "min")
end

#sum(field) ⇒ GroupedResult

Sum a field for each group.

Parameters:

  • field (Symbol, String)

    the field to sum within each group.

Returns:



7287
7288
7289
7290
# File 'lib/parse/query.rb', line 7287

def sum(field)
  results = super
  GroupedResult.new(results, "sum")
end