次の ActiveRecord クエリを使用していますが、これが正しい方法であるかどうかわかりません。
フィルター処理と並べ替えが必要なモデルがあります。
Match.where("host_id = #{self.id} OR guest_id = #{self.id}").order('week asc')
これは次のように変換されます。
SELECT "matches".* FROM "matches" WHERE (host_id = 1 OR guest_id = 1).
これは、ソートがデータベースレベルで行われていないと私に信じさせます。
明示的な SQL クエリを記述せずに、データベース レベルで強制的に並べ替える方法はありますか?
並べ替えはデータベースで行うのと、プルオーバーした後で行うのとではどちらがよいですか?