2012-01-25 39 views
3

我需要從表中選擇行,例如,無論日期如何,時間> = 18:00:00。問題是該值是日期時間類型,所以還有日期旁邊。例如2012-01-25 18:00:00。如何通過MySQL中的DateTime字段的小時部分來過濾查詢?

table1 
====== 
row 1: id='1' datetime='2012-01-25 18:00:00' 
row 2: id='2' datetime='2012-01-27 15:00:00' 
row 3: id='3' datetime='2012-01-30 19:45:00' 

,我需要選擇行1和第3行

有沒有方法來組合使用LIKE和> =做時間> =「%18:00:00」,其中%代表什麼日期?

回答

4

可以使用TIME()功能:

WHERE TIME(`datetime`) >= '18:00:00' 
+0

工作般的魅力,感謝名單! – woopata

1

事情是這樣的,也許:

SELECT * 
FROM yourTable 
WHERE 
    EXTRACT(HOUR FROM YourDate)>18 
2
select * 
from table1 
where HOUR(datimetime) >= 18 
相關問題