find_by_sql with named parameterized sql

The latter isn't working because you are inserting symbols directly in the sql, and as far as I know this isn't allowed. What's wrong with using the first alternative?

By the way, I reccomend doing this instead:

@order = Order.find(:all, :conditions => ["amount > ? and quantity > ?", @amount, @quantity]

Just in case you feel like making the orders table a legacy table called "15_t_orders" or whatever, you're keeping your app DRY by using the rails finders instead of sql, and only having the data finding itself in the sql part.