17

今日の日付がその行の 2 つの DATE 列の間にある (両端を含む) テーブルの行を取得するにはどうすればよいですか? たとえば、テーブルの次の 2 つの列を考えてみましょう。

ここに画像の説明を入力

4 月 10 日に 1 列目と 2 列目、または 25 日に 3 列目を取得するにはどうすればよいでしょうか (前述のように、これらを含む)。

どんな助けでも大歓迎です。前もって感謝します!

4

4 に答える 4

31

次のように条件を追加できます

DATE(NOW()) between date1 and date2
于 2012-04-18T03:46:43.003 に答える
25

between 演算子を使用している人はたくさんいますが、私は単純な AND 演算子を使用することを好みます。

between 演算子は含まれますが、単純な日付 (2012-04-10) は午前 0 時としてカウントされる可能性があり、含まれないためです。

したがって、これは問題なく機能し、常に日付範囲の境界が含まれます。

SELECT * FROM table WHERE from_date <= '2012-04-10' AND to_date >= '2012-04-10'
于 2012-04-18T03:51:37.783 に答える
7

SQL now() 関数を使用して、次のように日付列を比較するだけです。

SELECT * from table where now() >= from_date and now() <= to_date
于 2012-04-18T03:39:53.753 に答える