私は、部門とグループに基づいてユーザーの出席をマークするモデルを持っています。各ユーザーに部門とグループがあります。Rails 3:レコードを集計する方法
登録モデル上記フィールド「1と2は、」タイムスロット(たとえば:9-14から、14-18)ある間
date:date , departmentid:string , groupid:integer , one:integer , two:integer
.Attendanceは、ユーザーが現在の日付に属するようにマークされ、グループID同じ日には、groupid、departmentid、および出席者の複数のエントリがあります。
以下
サンプルレジスタテーブルノー見つけたいです。 1日あたりのユーザーのアテンション は現在、私はそれがうまくなっているが、私は次のように検索したい、
@register = Register.where(:date=>"2012-12-28").sum(:one , :two ,:three)
@register = Register.where(:date=>"2012-12-28").sum(:one)
を試してみましたが、それは可能です....事前に
感謝。
上記のコードに感謝します。 ...これを見つけることは可能ですか?Register.where(:date => Date.today、:departmentid => "DP14")。attendee_count(:one、:two、:three)...もしそうなら私はモデルで書くべきですか? – Cyber
これは次のようなものです: '[:one、:two、:three] .map {| slot | [列挙可能な総計]に従って、Register.where(:date => Date.today、:departmentid => "DP14")。attendee_count(slot)}。sum'(http://api.rubyonrails.org/classes) /Enumerable.html#method-i-sum)。これは3つのクエリを作成します。私はあなたが簡単に単一のクエリでそれを行うことができるとは思わない。 – systho