2012-04-18 13 views
7

今日の日付がその行の2つのDATE列の間の行を取得するにはどうすればよいですか? 例えば、テーブルのこれらの2つの列を取る:(私が言ったように、包括的)私は4月の10日、または25日に第三行に1行目と2行目を得ることができますどのように今日の日付が2つのDATE列の間にあるMySQLの行

enter image description here

を?

ご協力いただければ幸いです。前もって感謝します!

答えて

13

を次のように条件を追加することができますあなたが間使用して多くの人々を見つけます私は単純なAND演算子を使用する方が好きです。

私はこれを行いますが、演算子の間には含まれますが、単純な日付(2012-04-10)は深夜であるとみなすことができ、包括的ではないためです。

だから、これはうまく動作するはずですし、常に日付範囲の境界が含まれます:代わりに、あなたは()NOWを使用する場合、それが含まれていることに注意してください

声明

SELECT * FROM table WHERE from_date >= '2012-04-10' AND to_date <= '2012-04-10' 
+4

ワニが間違った方法を見ていることを除いて素晴らしい作品です。 – JJJollyjim

+0

おっと、申し訳ありません:) – Bill

6

ちょうどそうのような日付列を比較するために、SQLになりました()関数を使用します。

SELECT * from table where now() >= from_date and now() <= to_date 
+1

使用CURDATEを()次の関数はfalse(0)を返します。 "2010-01-01 14:00:00" <= "2010-01-01" – CesarC

+0

ありがとう@CesarC :) –

15

DATE(NOW()) between date1 and date2 
+0

私の問題の解決策でした、ありがとう! –

+0

また解決策 – erwinnandpersad

関連する問題