У мене є дві таблиці, як показано нижче
tbl1 tbl2
id article_id
title, image
whole_news
tags,
author,
older (datetime)
де tbl1.id -> tbl2.article_id
Як видалити записи з обох таблиць, де старше <2008-02-10 00:00:00?
Відповіді:
9 для відповіді № 1Подивіться мою відповідь на подібне питання тут.
Підбиваючи підсумок, це буде виглядати
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");
Але кращим рішенням буде зовнішнє обмеження ключа з каскадом видалення, якщо це варіант, то просто видаліть з tbl1 з відповідним депозитом.
0 для відповіді № 2
Ви можете використовувати тригери
0 для відповіді № 3
Найпростіший спосіб: Ви повинні використовувати ЗОВНІШНІ КЛІТИИ за допомогою DELETE CASCADE.