From cd13c3e1dad07c1168a318feb543d3b1ede9f2cf Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Mon, 20 Sep 2010 16:03:44 -0700 Subject: dealing with empty in statements --- lib/arel/visitors/to_sql.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'lib/arel/visitors') diff --git a/lib/arel/visitors/to_sql.rb b/lib/arel/visitors/to_sql.rb index cbe2b6cca3..5a92e27149 100644 --- a/lib/arel/visitors/to_sql.rb +++ b/lib/arel/visitors/to_sql.rb @@ -155,7 +155,9 @@ module Arel end def visit_Arel_Nodes_In o - "#{visit o.left} IN (#{o.right.map { |x| visit x }.join ', '})" + right = o.right + right = right.empty? ? 'NULL' : right.map { |x| visit x }.join(', ') + "#{visit o.left} IN (#{right})" end def visit_Arel_Nodes_And o -- cgit v1.2.3