我是ROR技术的新手。如果有人可以帮我将下面的SQL查询转换为Active Record rails
ActiveRecord::Base.connection.execute("UPDATE users SET score = score + #{total_score} WHERE users.event_id = #{event_id} AND (team_players @> ARRAY[1]::integer[])")
尝试更新users.score表并在条件匹配时添加total_score(变量)。
答案 0 :(得分:1)
这是Rails设置,但我发现它比你的代码更清晰。
User.where(event_id: event_id)
.where('team_players @> ARRAY[1]::integer[]')
.update_all("score = score + #{total_score}")