aboutsummaryrefslogtreecommitdiffstats
path: root/lib/arel/visitors/to_sql.rb
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2010-08-12 21:21:20 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2010-08-12 21:21:20 -0700
commite573a9ea468d748cf0ebd1a70521c1589efda23e (patch)
tree0d92325a54370b1412b47e247efe4bd4d86efdc7 /lib/arel/visitors/to_sql.rb
parent16e7273245473bb6466a79a38702a52387bab44d (diff)
downloadrails-e573a9ea468d748cf0ebd1a70521c1589efda23e.tar.gz
rails-e573a9ea468d748cf0ebd1a70521c1589efda23e.tar.bz2
rails-e573a9ea468d748cf0ebd1a70521c1589efda23e.zip
limits are added
Diffstat (limited to 'lib/arel/visitors/to_sql.rb')
-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 ', ' }",