0

ユーザーがフォームを介して日付と時刻を選択し、それを送信すると、コードはこのクエリを実行します

ABS(TIMESTAMPDIFF( HOUR , `start`, :time )) < 2

と選択した日付の差がstart2 未満のすべての行を検索します。

endただし、イベントの終了日時を保持する新しいフィールドを追加しました。

私の質問は、既存のクエリを編集して、選択した日付が から の間にあるすべての行を返すにはどうすればよいstartですendか?

これは、選択された開始および終了の日付 + 時刻の形式です。2012-07-25 04:30

4

1 に答える 1

1

使用するBETWEEN

WHERE selected_date BETWEEN start AND end

BETWEEN日付での使用に関するマニュアルを引用するには:

日付または時刻の値で BETWEEN を使用する場合に最良の結果を得るには、CAST() を使用して値を目的のデータ型に明示的に変換します。例: DATETIME を 2 つの DATE 値と比較する場合、DATE 値を DATETIME 値に変換します。DATE との比較で「2001-1-1」などの文字列定数を使用する場合は、文字列を DATE にキャストします。

于 2012-07-25T01:41:46.437 に答える