SQL:如何查找包含特定分钟的日期时间?

时间:2016-06-19 18:17:06

标签: mysql sql sql-server datetime

我有一个数据库,每分钟都会添加一个新条目。

我想查询结果是在1小时的间隔内(例如2016-06-19 20:01,2016-06-19 21:01,...)。

这是我目前的方法(我每小时使用42分钟,因为这可能只发生在日期的分钟部分):<groupId>org.codehaus.mojo</groupId> <artifactId>gwt-maven-plugin</artifactId> <version>2.8.0-SNAPSHOT</version>

但是我得到一个空结果,即使我的测试数据库看起来像这样: My test Database

有谁知道为什么我得到一个空结果,是因为我使用String来与datetime进行比较?

2 个答案:

答案 0 :(得分:4)

您可以尝试DATE_FORMAT()

SELECT * FROM 'raw_data' WHERE DATE_FORMAT('date', '%i') LIKE '42';

或者更准确地说,您可以使用MINUTE()功能:

SELECT * FROM 'raw_data' WHERE MINUTE('date') = 42;

答案 1 :(得分:2)

您可以使用分钟功能

SELECT * FROM 'raw_data' WHERE minute(`date`) = '42';