これを理解しようとする方法は、event1とevent2というラベルの付いたピースに2つのリストを書き出すことです。次に、各リストにいくつかのレコードをリストします(リストは同じになります)。ここで、以下の説明のWHEREから開始します。
2つのテーブルからデータを取得しています(同じテーブルを2回使用しましたが、当面は無視してください)
FROM mm_eventlist_dates event1
JOIN mm_eventlist_dates event2
残りを下から上に読むとおそらく役立つでしょう。
WHERE event1.id=$id
したがって、指定されたレコードIDを持つevent1からのレコードが必要です。おそらくそれはちょうど1つのレコードです。これで、そのイベントが終了した翌日がわかります。
date_add(event1.enddate, INTERVAL 1 DAY)
これで、event2のレコードがわかりました。その日付から開始する必要があります、
ON event2.startdate = date_add(event1.enddate, INTERVAL 1 DAY)
これで2つのレコードが識別されました。どのフィールドが必要ですか?
SELECT event2.id, event2.startdate, event2.price
ああ、開始日がわかったフィールドからのフィールドだけです。