aboutsummaryrefslogtreecommitdiffstats
path: root/lib/arel/visitors
diff options
context:
space:
mode:
Diffstat (limited to 'lib/arel/visitors')
-rw-r--r--lib/arel/visitors/to_sql.rb9
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/arel/visitors/to_sql.rb b/lib/arel/visitors/to_sql.rb
index bb2a4d07e8..44a585698f 100644
--- a/lib/arel/visitors/to_sql.rb
+++ b/lib/arel/visitors/to_sql.rb
@@ -12,7 +12,14 @@ module Arel
end
private
- def visit_Arel_Nodes_Select o
+ def visit_Arel_Nodes_SelectStatement o
+ [
+ o.cores.map { |x| visit x }.join,
+ ("LIMIT #{o.limit}" if o.limit)
+ ].compact.join ' '
+ end
+
+ def visit_Arel_Nodes_SelectCore o
[
"SELECT #{o.projections.map { |x| visit x }.join ', '}",
"FROM #{o.froms.map { |x| visit x }.join ', ' }",