モジュール: Mongoid::Contextual::Aggregable::Memory
- 次のドキュメントに含まれます。
- メモリ
- 定義:
- lib/mongoid/contextual/aggregate/memory.rb
Overview
メモリ内の値を集計するための動作を含みます。
インスタンス メソッドの概要を折りたたむ
-
#集計(フィールド) = ハッシュ
指定されたフィールドのすべての集計値を取得します。
-
# avg (フィールド) = 数値
指定されたフィールドの平均値を取得します。
-
# max (field = nil) = 数値 |ドキュメント
指定されたフィールドの最大値を取得します。
-
#分(フィールド = nil) = 数値 |ドキュメント
指定されたフィールドの最小値を取得します。
-
#sum (フィールド = nil) = 数値
指定された フィールドの合計値を取得します。
インスタンス メソッドの詳細
#集計(フィールド) =ハッシュ
指定されたフィールドのすべての集計値を取得します。 Aggregable::Mongo とのインターフェースの整合性のために提供されます。
18 19 20 21 22 |
# ファイル 'lib/mongoid/contextual/aggregate/ 18 ' の検索行 デフォルト 集計(フィールド) %w(count 合計 avg min 最大).each_with_object({}) 行う |メソッド, ハッシュ| ハッシュ[メソッド] = 送信(メソッド, フィールド) end end |
# avg (フィールド) =数値
指定されたフィールドの平均値を取得します。
32 33 34 35 36 37 38 |
# ファイル 'lib/mongoid/contextual/aggregate/ 32 ' の検索行 デフォルト avg(フィールド) 合計 = count { |doc| !doc.送信(フィールド).nil? } return nil ただし、 合計 > 0 合計 = 合計.to_f 場合 合計.is_a?(整数) 合計(フィールド) / 合計 end |
# max (field = nil) =数値 |ドキュメント
指定されたフィールドの最大値を取得します。 ブロックが提供されている場合、 は Ruby の列挙 API に従って、 フィールドの最大値を持つドキュメントを返します。
56 57 58 59 60 |
# ファイル 'lib/mongoid/contextual/aggregate/ 56 ' の検索行 デフォルト 最大(フィールド = nil) return スーパー() 場合 ブロック_指定 aggregate_by(フィールド, :max) end |
#分(フィールド = nil) =数値 |ドキュメント
指定されたフィールドの最小値を取得します。 ブロックが提供されている場合、 は Ruby の列挙 API に従って、 フィールドの最小値を持つドキュメントを返します。
78 79 80 81 82 |
# ファイル 'lib/mongoid/contextual/aggregate/ 78 ' の検索行 デフォルト min(フィールド = nil) return スーパー() 場合 ブロック_指定 aggregate_by(フィールド, :min) end |
#sum (フィールド = nil) =数値
指定された フィールドの合計値を取得します。 ブロックが提供されている場合、 は Ruby の列挙 API に従って合計を返します。
97 98 99 100 101 |
# ファイル 'lib/mongoid/contextual/aggregate/ 97 ' の検索行 デフォルト 合計(フィールド = nil) return スーパー(フィールド || 0) 場合 ブロック_指定 aggregate_by(フィールド, :sum) || 0 end |