diff options
author | Aaron Patterson <aaron.patterson@gmail.com> | 2012-09-24 11:24:14 -0700 |
---|---|---|
committer | Aaron Patterson <aaron.patterson@gmail.com> | 2012-09-24 11:24:14 -0700 |
commit | 0138356d9100ab1a6cccf0250932f93df7950a62 (patch) | |
tree | 2535264d9f42b9a38c4b6e08455161e6359b6d48 /lib/arel | |
parent | 08d034a89659f680438092c3eee29baead2e2d83 (diff) | |
parent | efdda5030a460e8af58ef0f7f4cd5ce8d7f1b541 (diff) | |
download | rails-0138356d9100ab1a6cccf0250932f93df7950a62.tar.gz rails-0138356d9100ab1a6cccf0250932f93df7950a62.tar.bz2 rails-0138356d9100ab1a6cccf0250932f93df7950a62.zip |
Merge pull request #140 from sunaku/GH-139
bugfix: some aggregations lacked DISTINCT emission
Diffstat (limited to 'lib/arel')
-rw-r--r-- | lib/arel/visitors/to_sql.rb | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/arel/visitors/to_sql.rb b/lib/arel/visitors/to_sql.rb index f5be934ba5..b194319002 100644 --- a/lib/arel/visitors/to_sql.rb +++ b/lib/arel/visitors/to_sql.rb @@ -287,22 +287,22 @@ key on UpdateManager using UpdateManager#key= end def visit_Arel_Nodes_Sum o - "SUM(#{o.expressions.map { |x| + "SUM(#{o.distinct ? 'DISTINCT ' : ''}#{o.expressions.map { |x| visit x }.join(', ')})#{o.alias ? " AS #{visit o.alias}" : ''}" end def visit_Arel_Nodes_Max o - "MAX(#{o.expressions.map { |x| + "MAX(#{o.distinct ? 'DISTINCT ' : ''}#{o.expressions.map { |x| visit x }.join(', ')})#{o.alias ? " AS #{visit o.alias}" : ''}" end def visit_Arel_Nodes_Min o - "MIN(#{o.expressions.map { |x| + "MIN(#{o.distinct ? 'DISTINCT ' : ''}#{o.expressions.map { |x| visit x }.join(', ')})#{o.alias ? " AS #{visit o.alias}" : ''}" end def visit_Arel_Nodes_Avg o - "AVG(#{o.expressions.map { |x| + "AVG(#{o.distinct ? 'DISTINCT ' : ''}#{o.expressions.map { |x| visit x }.join(', ')})#{o.alias ? " AS #{visit o.alias}" : ''}" end |