如何獲取當天日期介於該行兩個DATE列之間的表中的行? 例如,採取表格中的兩列:選擇MySQL行,其中今天的日期介於兩個日期列之間
我怎麼能拿在4月10日或25日的第三行的第一行和第二行(含,就像我說的) ?
任何幫助將不勝感激。提前致謝!
如何獲取當天日期介於該行兩個DATE列之間的表中的行? 例如,採取表格中的兩列:選擇MySQL行,其中今天的日期介於兩個日期列之間
我怎麼能拿在4月10日或25日的第三行的第一行和第二行(含,就像我說的) ?
任何幫助將不勝感激。提前致謝!
您可以添加一個條件,你會發現很多之間使用人運算符,但我更喜歡使用簡單的AND運算符。
我這樣做是因爲雖然介於運算符IS之間,但簡單日期(2012-04-10)可以算作是午夜,因此不會包含在內。
所以這應該只是罰款,並且將始終包含日期範圍的界限:
聲明
SELECT * FROM table WHERE from_date >= '2012-04-10' AND to_date <= '2012-04-10'
只需使用SQL現在()函數來比較,像這樣的日期列:
SELECT * from table where now() >= from_date and now() <= to_date
使用CURDATE()來代替,請注意,如果您使用NOW(),它包括時間信息並可能導致排除某些日期,即下一個函數返回false(0): 選擇「2010-01-01 14:00:00」<=「2010-01-01」 – CesarC 2012-04-18 04:57:43
謝謝@CesarC :) – 2013-10-31 10:55:13
如下
DATE(NOW()) between date1 and date2
是我的問題的解決方案,謝謝! – 2015-10-27 18:31:20
也解決方案 – erwinnandpersad 2017-11-16 09:30:10
偉大的作品,除非你有你的鱷魚看錯方式:) – JJJollyjim 2012-04-18 08:41:04
哎呀,對不起:) – Bill 2012-06-11 00:30:17