搜索在特定时间范围内添加的记录?

时间:2012-09-20 19:16:37

标签: mysql sql

是否可以在SQL中搜索两个小时内添加的记录?我需要在几秒钟内包括时间吗?

3 个答案:

答案 0 :(得分:1)

没有原生支持。您必须为每个表添加插入日期列:

alter table YourTable add column insert_time timestamp default current_timestamp

然后你可以:

select * from YourTable where insert_time > now() - interval 2 hour

答案 1 :(得分:0)

如果您要向我们展示您的表架构,示例数据以及您的期望,那么我们可以帮助您。但是从你的第二个问题来看,是的,你必须包括秒,分钟和小时。

答案 2 :(得分:0)

类似的东西:

SELECT * FROM table WHERE start < '03:00:00' AND end > '05:00:00'

或更具可读性:

SELECT  *
FROM    `table`
WHERE   CAST('05:00:00' AS time) BETWEEN `start` AND `end`
        OR (NOT CAST('05:00:00' AS time) BETWEEN `end` AND `start` AND `start` > `end`)