1
我有2款車型顯示和預訂。一個節目有很多預訂。每個預訂都有一個start_date和end_date。我想要找到這樣的節目:i)沒有預訂,或者ii)預訂與時間間隔[開始,結束]不重疊。到目前爲止,我有:Rails:有條件的OUTER JOIN
Show.joins("LEFT JOIN bookings ON bookings.show_id = shows.id").where("bookings.start_date > ? OR bookings.end_date < ?, end, start)
但它不返回沒有預訂的節目。如何在查詢結果中包含沒有預訂的節目?
這一工程!還有一個問題,如果我有多個節目的預訂不與查詢間隔重疊,則LEFT JOIN將返回重複的行。有沒有辦法擺脫重複? –
明白了。我可以使用「GROUP BY boats.id」 –