aboutsummaryrefslogtreecommitdiffstats
path: root/lib/arel/visitors/to_sql.rb
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2010-09-07 15:47:38 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2010-09-07 15:47:38 -0700
commit6e05eef9e94dd8f5138bab591d9dbe926498e6ed (patch)
tree7176793abbfb551f941261ae616bafb788c79b34 /lib/arel/visitors/to_sql.rb
parentd0e6b969d678fe1a7da4a9f0cedc47e66dcc4173 (diff)
downloadrails-6e05eef9e94dd8f5138bab591d9dbe926498e6ed.tar.gz
rails-6e05eef9e94dd8f5138bab591d9dbe926498e6ed.tar.bz2
rails-6e05eef9e94dd8f5138bab591d9dbe926498e6ed.zip
group nodes are working!
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 4ac38fb13e..55b3259e81 100644
--- a/lib/arel/visitors/to_sql.rb
+++ b/lib/arel/visitors/to_sql.rb
@@ -54,10 +54,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?)
+ ("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?)
].compact.join ' '
end
+ def visit_Arel_Nodes_Group o
+ visit o.expr
+ end
+
def visit_Arel_Nodes_Count o
"COUNT(#{o.distinct ? 'DISTINCT ' : ''}#{o.expressions.map { |x| visit x }.join(', ')})"
end