Module: Sequel::FilterHaving
- Defined in:
- lib/sequel/extensions/filter_having.rb
Instance Method Summary collapse
-
#and(*cond, &block) ⇒ Object
Operate on HAVING clause if HAVING clause already present.
-
#exclude(*cond, &block) ⇒ Object
Operate on HAVING clause if HAVING clause already present.
-
#filter(*cond, &block) ⇒ Object
Operate on HAVING clause if HAVING clause already present.
-
#or(*cond, &block) ⇒ Object
Operate on HAVING clause if HAVING clause already present.
Instance Method Details
#and(*cond, &block) ⇒ Object
Operate on HAVING clause if HAVING clause already present.
20 21 22 23 24 25 26 |
# File 'lib/sequel/extensions/filter_having.rb', line 20 def and(*cond, &block) if @opts[:having] having(*cond, &block) else super end end |
#exclude(*cond, &block) ⇒ Object
Operate on HAVING clause if HAVING clause already present.
29 30 31 32 33 34 35 |
# File 'lib/sequel/extensions/filter_having.rb', line 29 def exclude(*cond, &block) if @opts[:having] exclude_having(*cond, &block) else super end end |
#filter(*cond, &block) ⇒ Object
Operate on HAVING clause if HAVING clause already present.
38 39 40 41 42 43 44 |
# File 'lib/sequel/extensions/filter_having.rb', line 38 def filter(*cond, &block) if @opts[:having] having(*cond, &block) else super end end |
#or(*cond, &block) ⇒ Object
Operate on HAVING clause if HAVING clause already present.
47 48 49 50 51 52 53 54 |
# File 'lib/sequel/extensions/filter_having.rb', line 47 def or(*cond, &block) if having = @opts[:having] cond = cond.first if cond.size == 1 clone(:having => SQL::BooleanExpression.new(:OR, having, filter_expr(cond, &block))) else super end end |