我已经找到了解决方案,但找不到任何针对我的具体问题,无法自行对其进行排序,我正在尝试的查询过于繁重,导致我的服务器超时。
我有一个像这样的表'事件':
+-----------+--------------------------------+
| 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和/或功能可能很容易,但我无法做到这一点......任何帮助都将不胜感激!
非常感谢,
亚瑟
答案 0 :(得分:2)
如果您尝试以下内容怎么办
select * from events
where repeat_id > 0
group by title
having max(`timestamp`) <= CURRENT_TIMESTAMP;