diff --git a/db/migrate/20190530055732_add_evaluate_count_to_shixuns.rb b/db/migrate/20190530055732_add_evaluate_count_to_shixuns.rb index 9389afd0..7bd6dcd1 100644 --- a/db/migrate/20190530055732_add_evaluate_count_to_shixuns.rb +++ b/db/migrate/20190530055732_add_evaluate_count_to_shixuns.rb @@ -2,20 +2,20 @@ class AddEvaluateCountToShixuns < ActiveRecord::Migration def up add_column :shixuns, :evaluate_count, :integer, default: 0 - limit = 100 - total = Shixun.count - - ((total / 100) + 1).times do |index| - shixun_ids = Shixun.order(:id).limit(limit).offset(index * limit).pluck(:id) - return if shixun_ids.blank? - - count_map = Game.joins(:challenge).where(challenges: { shixun_id: shixun_ids }).group('shixun_id').sum(:evaluate_count) - - id_str = count_map.keys.join(',') - str = count_map.map { |shixun_id, count| "WHEN #{shixun_id} THEN #{count}" }.join(' ') - - execute "UPDATE shixuns SET evaluate_count = CASE id #{str} END WHERE id IN (#{id_str})" - end + # limit = 100 + # total = Shixun.count + # + # ((total / 100) + 1).times do |index| + # shixun_ids = Shixun.order(:id).limit(limit).offset(index * limit).pluck(:id) + # return if shixun_ids.blank? + # + # count_map = Game.joins(:challenge).where(challenges: { shixun_id: shixun_ids }).group('shixun_id').sum(:evaluate_count) + # + # id_str = count_map.keys.join(',') + # str = count_map.map { |shixun_id, count| "WHEN #{shixun_id} THEN #{count}" }.join(' ') + # + # execute "UPDATE shixuns SET evaluate_count = CASE id #{str} END WHERE id IN (#{id_str})" + # end end def down