2011-04-20 49 views
1

我在搜索日期時遇到了一些麻煩。在MYSQL中簡單搜索數據

這裏的格式:

2006-03-25 23:27:12 

如果我在尋找我試圖用這樣的:

select * from aol where QueryTime BETWEEN '2006-03-19 00:00:00' and '2006-03-18 00:00:00' 

,但我從來沒有得到任何結果:(

回答

3

之間要求較低值的範圍的最大值之前和之後,否則返回空結果集而沒有任何錯誤。

select * from aol where QueryTime BETWEEN '2006-03-18 00:00:00' and '2006-03-19 00:00:00' 

是一樣的書寫

select * from aol where QueryTime >= '2006-03-18 00:00:00' and QueryTime <= '2006-03-19 00:00:00' 
+0

+1,這就是它。 – Unreason 2011-04-20 12:46:55

0

你可以看看兩個日期之間的區別:

SELECT DATEDIFF('2007-12-31 23:59:59','2007-12-30'); 

或者這可以正常工作。

SELECT something FROM tbl_name 
-> WHERE DATE_SUB(CURDATE(),INTERVAL 30 DAY) <= date_col; 

這兩個例子都來自this page。他們展示了很多不同的方式,你可以做到這一點。