2017-09-29 1 views
0

私はデータベースの複数の列の値の合計を求めています。これはFantasy Leagueのすべてのプレーヤーの統計分析を提供するFantasy Basketballアプリ用です。 DB内のレコードごとに7つの列を追加しようとしています。 ActiveRecordクエリメソッドを使用するか、実際のSQLクエリを使用する方が良いかどうかはわかりません。私は何の問題もなく合計を見つけることができますレールの個々のレコードの複数の列の合計を見つけるにはどうすればよいですか?

def self.find_player_value_totals 
    player_values = [] 
    query = <<-SQL 
       SELECT id,(free_throw_value + three_pointer_value + 
       rebounds_value + assists_value + steals_value + 
       blocks_value + points_value) 
       AS value_total 
       FROM season_players 
      SQL 
    totals = find_by_sql(query) 

    totals.each do |total| 
     player_values << total.value_total 
    end 
    end 

私のMySQL DBでこのクエリを使用する:ここで私はSeasonPlayerモデル内で使用しようとした方法がある

select id,(free_throw_value + three_pointer_value + rebounds_value + assists_value + steals_value + blocks_value + points_value) AS value_total FROM season_players 

何かアドバイスは非常になります私はRailsの専門家ではないと評価しました。

答えて

0

私はあなたの質問をかなり受け取りません。

+0

あなたの応答@pauloanchetaをありがとう助け

class SeasonPlayers # assuming that you only want to aggregate from one player def find_player_value_totals [free_throw_val, three_pointer_val, rebound_val, assist_val, steals_val, blocks_val, points_val].sum end end 

希望:しかし、私は、これはあなたが実装したいものだと思います!私は各プレーヤーの合計を集計しようとしています。私は同時に複数の配列を反復処理する方法がわかりません。 –

関連する問題