0

次のフィールドがあるテーブル「会議」があります

id   recurring_start_date  recurring_end_date (Both are date fields)
1.    2012-07-22             2012-07-25
2.    2012-07-27             2012-08-05
3.    2012-07-26             2012-08-26
4.    2012-07-23             2012-10-23
5.    2012-08-24             2012-11-24
6.    2012-09-12             2012-10-19
7.    2012-07-28             2012-07-29

開始と終了の繰り返しの日付範囲の間に「 2012-07-28 」の日付を含み、開始と終了の繰り返しの日付を含むSQLクエリでこれらの行をフィルタリングしたいと思います。 結果は2行目、3行目、4行目、7行目になることがわかっています。 しかし、PHPでこのクエリを実行するにはどうすればよいですか?



これを試しましたが、機能しません。

$sql = "
    SELECT * 
    FROM 
        `meetingss` 
    WHERE 
        `recurring_st_date` >= \'2012-07-28\' 
        AND `recurring_ed_date` <= \'2012-07-28\' 
    ";

間違っている可能性があります、供給された日付条件が間違っている可能性があります。
これを行うための私の仲間の良い提案。ありがとう...

4

3 に答える 3

5
$sql = "SELECT * FROM `meetings` 
        WHERE date('2012-07-28') 
              between `recurring_st_date` AND `recurring_ed_date`";
于 2012-07-27T12:56:23.077 に答える
2
`recurring_st_date` >= STR_TO_DATE('2012-07-28', '%Y-%m-%d') AND 
`recurring_ed_date` <= STR_TO_DATE('2012-07-28', '%Y-%m-%d')
于 2012-07-27T12:52:51.763 に答える
0

バックスラッシュを削除します

`recurring_st_date` >= '2012-07-28' 
AND `recurring_ed_date` <= '2012-07-28' 
于 2012-07-27T12:55:43.733 に答える