ShowとBookingの2つのモデルがあります。ショーには多くの予約があります。各予約には、start_dateとend_dateがあります。i)予約がないか、ii)時間間隔[開始、終了]と重複しない予約があるショーを見つけたいです。これまでのところ:
Show.joins("LEFT JOIN bookings ON bookings.show_id = shows.id").where("bookings.start_date > ? OR bookings.end_date < ?, end, start)
ただし、予約のない番組は返されません。予約のない番組をクエリ結果に含めるにはどうすればよいですか?