aboutsummaryrefslogtreecommitdiffstats
path: root/lib/arel/visitors/to_sql.rb
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2010-09-08 14:36:10 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2010-09-08 14:36:10 -0700
commit7b8944cb7662509d7ba6869ff571518ac7f848ea (patch)
treebe57ff9ce3a937428a5c61cb8cada24006fe8874 /lib/arel/visitors/to_sql.rb
parentab55d3bfc18348e9f43e4604e02c4c3db7a3e23c (diff)
downloadrails-7b8944cb7662509d7ba6869ff571518ac7f848ea.tar.gz
rails-7b8944cb7662509d7ba6869ff571518ac7f848ea.tar.bz2
rails-7b8944cb7662509d7ba6869ff571518ac7f848ea.zip
adding a sum node
Diffstat (limited to 'lib/arel/visitors/to_sql.rb')
-rw-r--r--lib/arel/visitors/to_sql.rb5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/arel/visitors/to_sql.rb b/lib/arel/visitors/to_sql.rb
index f45bbab793..ada8aa6a16 100644
--- a/lib/arel/visitors/to_sql.rb
+++ b/lib/arel/visitors/to_sql.rb
@@ -69,6 +69,11 @@ module Arel
}.join(', ')})#{o.alias ? " AS #{visit o.alias}" : ''}"
end
+ def visit_Arel_Nodes_Sum o
+ "SUM(#{o.expressions.map { |x|
+ visit x }.join(', ')})#{o.alias ? " AS #{visit o.alias}" : ''}"
+ end
+
def visit_Arel_Nodes_TableAlias o
"#{visit o.relation} #{quote_table_name o.name}"
end