aboutsummaryrefslogtreecommitdiffstats
path: root/lib/arel/visitors/to_sql.rb
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2010-09-08 15:29:22 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2010-09-08 15:29:22 -0700
commitcb6d13877c8d85bd7ba7f7286dfc8b5ae98a50b3 (patch)
tree08ab278f12e785b43de8cec436d3cacaead8c875 /lib/arel/visitors/to_sql.rb
parent7b122f9a336c8c780dcc5a29074f17f3ec493dc6 (diff)
downloadrails-cb6d13877c8d85bd7ba7f7286dfc8b5ae98a50b3.tar.gz
rails-cb6d13877c8d85bd7ba7f7286dfc8b5ae98a50b3.tar.bz2
rails-cb6d13877c8d85bd7ba7f7286dfc8b5ae98a50b3.zip
adding having nodes
Diffstat (limited to 'lib/arel/visitors/to_sql.rb')
-rw-r--r--lib/arel/visitors/to_sql.rb7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/arel/visitors/to_sql.rb b/lib/arel/visitors/to_sql.rb
index e1cf0f3778..48c8c492e0 100644
--- a/lib/arel/visitors/to_sql.rb
+++ b/lib/arel/visitors/to_sql.rb
@@ -57,10 +57,15 @@ module Arel
"SELECT #{o.projections.map { |x| visit x }.join ', '}",
("FROM #{o.froms.map { |x| visit x }.join ', ' }" unless o.froms.empty?),
("WHERE #{o.wheres.map { |x| visit x }.join ' AND ' }" unless o.wheres.empty?),
- ("GROUP BY #{o.groups.map { |x| visit x }.join ', ' }" unless o.groups.empty?)
+ ("GROUP BY #{o.groups.map { |x| visit x }.join ', ' }" unless o.groups.empty?),
+ (visit(o.having) if o.having),
].compact.join ' '
end
+ def visit_Arel_Nodes_Having o
+ "HAVING #{visit o.expr}"
+ end
+
def visit_Arel_Nodes_Group o
visit o.expr
end