Kad se koristi Rails, logično je (iz primera na bobby-tables.com):
Kôd:
Person.find :all, :conditions => ['id = ? or name = ?', id, name]
Skoro sam naišao na
Sequel - još jedan zgodan DB toolkit za Ruby (kad nema potrebe za celom ActiveRecord mašinerijom). Tamo se filterovanje datasetova radi ovako:
Kôd:
dataset.filter(:name => 'abc')
dataset.filter('name = ?', 'abc')
dataset.filter{|o| o.value > 100}
dataset.exclude{|o| o.value <= 100}
dataset.filter(:value => 50..100)
dataset.where{|o| (o.value >= 50) & (o.value <= 100)}
dataset.where('value IN ?', [50,75,100])
dataset.where(:value=>[50,75,100])
dataset.filter(:name => 'abc').first
dataset[:name => 'abc'] # same as above
# Filter using a subquery
dataset.filter{|o| o.price > dataset.select(o.avg(price) + 100)}
http://sequel.rubyforge.org/rdoc/fil...ring_rdoc.html