2016-08-17 42 views
0

獲取過去x個小時的行。問題是x可以是任意數量的小時數。例如,如果x是48,我需要獲得過去2天的所有行。如何將datetime存儲在數據庫中併成功檢索行。謝謝。用戶將選擇日期和時間,然後選擇持續時間(x)。MySQL:獲取行添加x個小時

+1

Google search.try it –

+0

事情是我不需要代碼。我只需要知道我應該如何保存日期,然後如何使用DATE_SUB之類的數據來獲取數據。 – Jones

+1

如果您要保存日期和時間,請使用數據類型'datetime'。你可以在MySQL中使用'>','<'和'BETWEEN'和datetime-columns,所以解決方案非常簡單。 –

回答

0

您可以在mysql中使用DATE_SUB()函數。

*** WHERE `timecolumn_in_your_table` BETWEEN (DATE_SUB('2016-08-17', INTERVAL 48 HOUR)) and '2016-08-17' 

條件可以給出按照您的要求

+0

這樣查詢將獲得'2016-08-17'和48小時之間的數據? – Jones

0

首先你需要改變你的表中添加一個時間字段

ALTER TABLE MyTable ADD timecolumn_in_your_table DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP;

然後,說的Krishnakumar,您可以使用檢索行:

*** WHERE timecolumn_in_your_table BETWEEN(DATE_SUB( '2016年8月17日',間隔48 HOUR))和 '2016年8月17日'

(WHERE子句與timecolumn_in_your_table 2016年8月15日00:00至2016年8月17日00:00之間選擇行上)

(我希望我能加入這個職位爲的Krishnakumar的回答評論,但我不能,因爲我的知名度低於50)

0

是瓊斯。上面的查詢會給出特定日期和子時間(從該日期開始的時間間隔)之間的答案。我希望這是你問的。