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.
23 24 25 26 27 28 29 |
# File 'lib/sequel/extensions/filter_having.rb', line 23 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.
32 33 34 35 36 37 38 |
# File 'lib/sequel/extensions/filter_having.rb', line 32 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.
41 42 43 44 45 46 47 |
# File 'lib/sequel/extensions/filter_having.rb', line 41 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.
50 51 52 53 54 55 56 57 |
# File 'lib/sequel/extensions/filter_having.rb', line 50 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 |