2015-06-16 191 views
0

特定時間我有這樣 2015年5月31日 17日期範圍:36:36.000000 到 2015年12月20日 22:20:00.000000。選擇從不同勢日期日期時間的MySQL字段

好吧,我想要獲取那段時間內每天17到19之間的行。當然包括分鐘也是很重要的。

我的意思是,在每一天,如果一行的時間在17到20之間,我需要那個。

我應該使用什麼查詢?

我用

SELECT * 
FROM (`orktape`) 
WHERE STR_TO_DATE(timestamp, '%Y-%m-%d %H:%i:%s') >= '2015-05-31 17:36:36.000000' 
AND STR_TO_DATE(timestamp, '%Y-%m-%d %H:%i:%s') < '2015-12-20 22:20:00.000000' 
ORDER BY `timestamp` desc 

但它導致所有這些都行2015年5月31日之間17:其中包括像2015 - 某些行00.000000:和二○一五年十二月二十○日36.000000 22::36 20 12-20 02:20:00.000000這不是正確的結果。

謝謝。

回答

1

您可以通過...

SELECT * FROM orktape WHERE HOUR(mytimestamp) >= 17 AND HOUR(mytimestamp) < 19 

不知道你的時間戳列稱爲一個範圍內的小時選擇,我不會把它戳,這可能會造成混亂。

+0

那麼日期和分鐘呢?可以通過添加DATE(timestamp)> LOBLOBLOB來確定日期。但分鐘呢? – hgh

+0

上面的HOUR代碼將包含17:00:00.000000和18:59:59:999999之間的所有內容,它只是檢查小時而不是分鐘。 – zefram

+0

感謝您的回答,但我也需要幾分鐘。我必須做什麼? – hgh

相關問題