1

我有一个包含这些数据的 mysql 表

id       user_id    latitude       longitude       updated_at
1        1          13.21          102.41          2012-08-06 13:24:06 
1        1          13.31          102.52          2012-08-06 13:54:06
1        1          13.51          102.65          2012-08-06 14:24:06
1        1          13.61          102.33          2012-08-06 14:34:06
1        1          13.71          102.57          2012-08-06 15:24:06
1        1          13.81          102.90          2012-08-06 16:24:06

我想检索与last updated time.

即如果我搜索2012-08-06 16:24:06我只想得到这些行

1        1          13.21          102.41          2012-08-06 13:24:06 
1        1          13.51          102.65          2012-08-06 14:24:06
1        1          13.71          102.57          2012-08-06 15:24:06
1        1          13.81          102.90          2012-08-06 16:24:06
4

2 回答 2

3

尝试这个:

SELECT *
FROM table_name
WHERE DATE_FORMAT(updated_at, '%i%s') = DATE_FORMAT(CURRENT_TIMESTAMP, '%i%s');

SQLFiddle 演示

于 2012-08-07T07:40:25.557 回答
1

MySQL 具有从给定时间提取小时、分钟和秒部分的功能。您可以使用它来比较当前秒和分钟与字段中的秒和分钟。

WHERE SECOND(updated_at) = SECOND(CURTIME()) AND MINUTE(updated_at) = MINUTE(CURTIME())
于 2012-08-07T07:32:47.660 回答