aboutsummaryrefslogtreecommitdiffstats
path: root/lib/arel/visitors/to_sql.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/arel/visitors/to_sql.rb')
-rw-r--r--lib/arel/visitors/to_sql.rb8
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