两个上午9点到晚上10点之间的结果 - mysql

时间:2013-09-24 12:20:08

标签: mysql time

我想运行一个mysql来查找上午9点到10点之间的所有结果。

我希望它能找到所有结果,无论它是什么日子。我可以找到某一天的结果,但不是所有结果

5 个答案:

答案 0 :(得分:2)

DateTime对象作为列,只需使用内置函数来提取小时:

SELECT *
FROM table t
WHERE HOUR(t.DateTimeColumn) >= 9 AND HOUR(t.DateTimeColumn) <= 22

SELECT *
FROM table t
WHERE HOUR(t.DateTimeColumn) BETWEEN 9 AND 22

请参阅:

http://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html

http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_hour

答案 1 :(得分:1)

您可以使用hour()函数完成此操作。

这将是这样的:

select *
from table
where hour(timestamp_col) >= 9
and hour(timestamp_col) <= 10;

http://dev.mysql.com/doc/refman/5.6/en/date-and-time-functions.html#function_hour

答案 2 :(得分:1)

您需要使用过滤器where hour(yourtimestampcolumn) between 9 and 10

between 9 and 22晚上10点

答案 3 :(得分:1)

SELECT ...
FROM ...
WHERE TIME(datetime column) BETWEEN '09:00' AND '10:00';

答案 4 :(得分:-1)

如果日期存储如下,这也会有所帮助: - '2013-09-18 11:47:12'

SELECT * FROM `users` WHERE substr(created,12,8) > '09:00:00' and substr(created,12,8) < '10:00:00'