たとえば、ユーザーが少なくとも3つの注文を持っているかどうかを確認したい
注文テーブルが非常に大きいことを考えると、どちらが良いですか?
a。結果セットのサイズを3に制限し、サイズが一致するかどうかを確認します
NO_OF_MATCHES = 3
orders = Order.where('user_id = ?', 1).limit(NO_OF_MATCHES )
return true if orders.size == NO_OF_MATCHES
b。カウントを取得して、それと比較するだけです
NO_OF_MATCHES = 3
count = Order.count(:conditions => ['user_id = ?',1])
return true if count >= NO_OF_MATCHES
私が考えもしなかったまったく新しい方法も歓迎します