module Sequel::DatasetQuery

  1. lib/sequel/extensions/query.rb
Parent: Sequel

Methods

Public Instance

  1. query

Public Instance methods

query (&block)

Translates a query block into a dataset. Query blocks are an alternative to Sequel’s usual method chaining, by using instance_eval with a proxy object:

dataset = DB[:items].query do
  select :x, :y, :z
  filter{(x > 1) & (y > 2)}
  reverse :z
end

Which is the same as:

dataset = DB[:items].select(:x, :y, :z).filter{(x > 1) & (y > 2)}.reverse(:z)
[show source]
# File lib/sequel/extensions/query.rb, line 43
def query(&block)
  query = Dataset::Query.new(self)
  query.instance_eval(&block)
  query.dataset
end