大家好,我对这个查询感到沮丧,
我们先把这个说清楚
我有 table :
表1 表2 表3 表4
每个表与其他表都有一些外键关系
表1 --> 表2 --> 表3 --> 表4
但只有 table3 有日期时间列
如果超过 10 秒,如何从这些表中删除记录
我试试
DELETE FROM table1 WHERE timestamp < (NOW() - INTERVAL 1 SECOND)
DELETE FROM table2 WHERE timestamp < (NOW() - INTERVAL 1 SECOND)
DELETE FROM table3 WHERE timestamp < (NOW() - INTERVAL 1 SECOND)
DELETE FROM table4 WHERE timestamp < (NOW() - INTERVAL 1 SECOND)
但它的错误
Unknown column 'timestamp' in 'where clause'
最佳答案
DELETE FROM table1 JOIN table3 ON table1.constraint_field=table3.constraint_field WHERE timestamp > (NOW() - INTERVAL 1 SECOND)
并记住在 DELETE 上设置 CASCADE 作为约束。
关于Mysql删除超过10秒的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38808537/