title: User.where(:id => [1,2]).where(:id => 2).arel.to_sql unexpected result
body: <p>From rails console, running the following gives an unexpected result:</p>
  
  <pre><code>User.where(:id =&gt; [1,2]).where(:id =&gt; 2).arel.to_sql
   =&gt; "SELECT `users`.* FROM `users` WHERE (`users`.`id` IN (1, 2) OR `users`.`id` = 2)"
  </code></pre>
  
  <p>I'm not expecting that to be an <code>OR</code>.</p>
  
  <p>This example is a very simplified example of a tableless <code>User</code> model I have that defines a method:</p>
  
  <pre><code>def cars
    Car.where(:id =&gt; list_of_users_car_ids_not_from_the_database)
  end
  </code></pre>
  
  <p>where <code>Cars</code> are kept in the database.  Then later in a controller</p>
  
  <pre><code>current_user.cars.find(params[:id])
  </code></pre>
  
  <p>(okay, this is also a simplified example, but much more representative of what I'm trying to accomplish)</p>