複雑なSQL検索するならrailswhereが便利だよ
内容は古いよな、、、
https://code.google.com/p/railswhere/
Rails3でWhereが使えるから不要かもしれないけど、便利なので使っている。
複数の条件を組み合わせるところで苦労した
w = Where.new w.and_not { |ww| ww.or "x=1" ww.or "x=2" ww.or "x=3" } w.to_s y = Where.new y.and("first_name='tim'") User.find(:all, :conditions => (w & y).to_s)
入れ子や複数の条件には「to_s」を加えておいて、単体には「なし」、そして合成したら「to_s」を加える。