イベント テーブルに startDate と endDate の 2 つの列 (日時の両方) があります。date()
phpの関数を使って当日を取得しています。
これは、たとえば 2013-03-12 になります。
今日発生する日付と組み合わされたイベントには、次の 3 つの可能性があります。
- イベントはこの日に開始および終了します
- イベントが以前に開始され、今日終了しました
- イベントは今日開始され、将来終了します (>= 2013-03-13)
日付の操作に慣れていないので、これらすべてを個別のクエリに分割したいと思います。最初のクエリから始めましたが、すでにそのクエリで失敗しています。私は次のことを試しました:
SELECT * FROM events WHERE (startDate= '2013-03-12' AND endDate= '2013-03-12')
としても:
SELECT * FROM events WHERE NOT (startDate < '2013-03-12' OR endDate > '2013-03-12')
DATE()
同様に使用して、「2013-03-12%」のような日付をフォーマットしようとしました。
12 日に少なくとも 1 つのイベントが開催されると確信しているのに、なぜ機能しないのかわかりません。どんな助けでも大歓迎です。