我有两张表如下
tbl1 tbl2
id article_id
title,image
whole_news
tags,author,older (datetime)
其中tbl1.id – > tbl2.article_id
如何删除两个表中较旧的表的记录< 2008-02-10 00:00:00? 最佳答案 请参阅我对类似问题here的回答.
总而言之,它看起来像
delete s,r from tbl1 s left join tbl2 r on s.id = r.article_id where s.older < str_to_date('2008-02-10 00:00:00','%Y-%m-%d %H:%i:%S');
但更好的解决方案是使用on delete cascade的外键约束,如果这是一个选项,那么只需使用相应的where子句从tbl1删除.