MySQL:找到过时的重复事件

时间:2015-08-11 13:54:19

标签: mysql sql

我已经找到了解决方案,但找不到任何针对我的具体问题,无法自行对其进行排序,我正在尝试的查询过于繁重,导致我的服务器超时。

我有一个像这样的表'事件':

+-----------+--------------------------------+
| field     | informations                   |
+-----------+--------------------------------+
| id        | INT(11) PRIMARY AUTO_INCREMENT |
| repeat_id | INT(11)                        |
| timestamp | TIMESTAMP                      |
| title     | VARCHAR(255)                   |
| details   | TEXT                           |
+-----------+--------------------------------+

我的活动是唯一的('repeat_id'= 0 )或重复('repeat_id'> 0 ),我的问题是,我想找到所有“过时”事件,即重复的事件,其最大时间戳在当前时间戳下。

使用良好的synthax和/或功能可能很容易,但我无法做到这一点......任何帮助都将不胜感激!

非常感谢,

亚瑟

1 个答案:

答案 0 :(得分:2)

如果您尝试以下内容怎么办

select * from events
where repeat_id > 0
group by title
having max(`timestamp`) <= CURRENT_TIMESTAMP;