title: Inverse of a complex active record query
body: <p>I have a complex active record query here:</p>
  
  <pre><code>House.includes(:bookings).where("(bookings.status = ? AND bookings.check_in &lt;= ? AND bookings.check_out &gt;= ?) 
    OR (bookings.status = ? AND bookings.check_in &lt;= ? AND bookings.check_out &gt;= ?)", 
    'booked', check_dates[:check_out_date], check_dates[:check_in_date], 
    'blocked', check_dates[:check_out_date], check_dates[:check_in_date]).references(:bookings).uniq
  </code></pre>
  
  <p>I want to get the rest of the <code>House</code> that not in this query.
  But <code>includes</code> can't take <code>not</code> query.</p>