2015-12-01 47 views
2

我想選擇最近一小時的所有記錄。問題是,我沒有時間戳。我把時間保存在一行中,在另一個日期保存。如何選擇MySQL中沒有時間戳的最後一個小時

date  time 
2015-11-27 10:55:04 
2015-11-27 11:16:38 
2015-11-27 11:57:29 
2015-11-27 13:04:47 
2015-11-27 14:29:00 
2015-11-27 14:36:41 
2015-11-27 14:52:46 
2015-11-27 15:06:20 
2015-11-27 15:30:24 
2015-11-27 15:47:15 

是否有可能將其轉換爲一個時間戳,以便按照這種方法進行選擇我想: select rows from last 2 hours

的感謝!

+2

你有什麼SOFAR試過嗎?什麼是日期和時間列的數據類型? – deterministicFail

+0

1.(顯然)考慮將日期和時間存儲爲單個實體 – Strawberry

+0

您的谷歌搜索字符串是「mysql日期函數」。 –

回答

4

我想我可以自己解決問題。 感謝您的提示。

SELECT * 
FROM recs 
WHERE TIMESTAMP(`datefield`,`timefield`) BETWEEN DATE_SUB(NOW(), INTERVAL 1 HOUR) AND NOW(); 
1

想和大家分享各地的其他方式,

SELECT 
     * 
FROM 
     <tablename> 
WHERE 
     CAST(CONCAT(datecolumn,' ',timecolumn) AS DATETIME) > SUBDATE(NOW(), INTERVAL 1 HOUR);