average

カラムの平均値を求める(average)

適応バージョン

  • 1.0.0
  • 1.1.0
  • 1.1.1
  • 1.1.6
  • 1.2.0
  • 1.2.6
  • 2.0.0
  • 2.0.1
  • 2.0.3
  • 2.1.0
  • 2.2.1
  • 2.3.2
  • 2.3.8
  • 3.0.0
  • 3.0.5
  • 3.0.7
  • 3.0.9
  • 3.1.0
  • 3.2.3
  • 3.2.8
  • 3.2.13
  • 4.0.0
  • 4.1.0
  • 4.2.1

説明

カラムの平均値を求める

使い方

モデル.average(カラム名 [, オプション])

オプション

オプション説明
:conditions関数を条件に一致する行に制限
:include関連テーブルのデータを取得
:joinsテーブル結合
:order結果を並び替える
:select集計に使う行を選択
:distinctカラム内の重複した値を除いて、別個の値のみカウント
:groupグルーピング命令

平均を求める
Page.average(:count)
# SELECT AVG("pages"."count") AS avg_id FROM "pages"
カテゴリが1のcountの平均を求める
Page.average(:count, :conditions => ["category_id = 1"])
# SELECT AVG("pages"."count") AS avg_id FROM "pages" WHERE (category_id = 1)
カテゴリ名がrailsのcountの平均を求める
Page.average(:count, :joins => :category, :conditions => ["name = 'rails'"])
# SELECT AVG("pages"."count") AS avg_id FROM "pages" INNER JOIN "categories" ON "categories"."id" = "pages"."category_id" WHERE (name = 'rails')
カテゴリごとにグルーピングして、平均を求める
Page.average(:count, :group => :category_id)
# SELECT AVG("pages"."count") AS average_position, category_id AS category_id FROM "pages" GROUP BY category_id

ソースコード

ソースコード検索