MySQL选择分钟匹配的日期时间

时间:2017-04-26 10:58:57

标签: mysql datetime select

我有一个包含时间戳列的表。对于给定的日期时间,我希望返回与给定分钟匹配的所有记录,无论它是在给定的秒之前还是之后。

换句话说,我有:

2017-04-01 09:41:23
2017-04-02 09:41:02
2017-04-02 09:41:27
2017-04-02 09:42:49

,并提供:

2017-04-02 09:41:30

我想回来:

2017-04-02 09:41:02
2017-04-02 09:41:27

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

您可以直接提取到分钟:

select t.*
from t
where date_format(tscol, '%Y-%m-%d %H:%i') = date_format('2017-04-02 09:41:30', '%Y-%m-%d %H:%i');

或者,取决于常数的类型:

select t.*
from t
where date_format(tscol, '%Y-%m-%d %H:%i') = left('2017-04-02 09:41:30', 16);