2011-07-16 49 views
-1

請任何人都可以告訴我查詢從今天開始從數據庫中檢索未來30天的數據?其數據庫用戶可以上傳至未來90天的數據。如何從數據庫中檢索未來30天的數據?

+1

當然'下一個'三十天的數據還不存在嗎? ;-) –

+0

好的...如果它的事件相關的數據庫...和用戶可以插入他們的事件直到未來90天...? – Saam

回答

2
SELECT * FROM table WHERE date >= CURRENT_TIMESTAMP AND date <= CURRENT_TIMESTAMP + INTERVAL 30 DAY 
+0

非常感謝你....我以'D,D M,Y'格式存儲日期......是否可以使用這種日期格式? – Saam

+2

爲什麼您將日期存儲爲字符串而不是DATE列?將數據存儲爲數據,然後在輸出處進行格式化。你應該改變你的程序,但是如果你必須的話,你可以用[str_to_date](http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions。 HTML#function_str至今)。 –

+0

我需要輸入和輸出相同的格式'D,D M,Y'....這就是爲什麼我把它作爲一個字符串... – Saam

-1

假設你存儲日期爲整數(Unix紀元),而不是時間戳,你可以做這樣的事情:

SELECT * FROM wherever WHERE startdate >= UNIX_TIMESTAMP() AND startdate <= UNIX_TIMESTAMP() + 2592000; 

這是假設那些30天包括2.592.000秒。類似的代碼可以使用時間戳。

1
SELECT * 
FROM table 
WHERE date BETWEEN CURRENT_TIMESTAMP() AND DATE_ADD(CURRENT_TIMESTAMP(), INTERVAL 30 DAY) 
+0

非常感謝您....我以'D,d M,Y'格式存儲日期......是否可以使用這種日期格式? – Saam

+0

是數據類型varchar?或日期/日期?如果它的日期/日期時間應該工作 – ysrb

+0

Ya..its varchar ... – Saam