[SQL] Как удалить данные из 2 таблиц?

S
На сайте с 06.08.2008
Offline
130
781

Имеется 2 таблицы в БД: users_a и users_b. В них есть совпадающие поля 'id' и 'user' - остальные поля разные.

Нужно из обоих таблиц удалить юзера у которого дата входа в аккаунт меньше или равна заданной.

Как удалить из одной таблицы - понятно:

DELETE FROM users_a WHERE date_login <= '1396257390'

А вот как удалить соответствующие этому условию строки из второй таблицы?

Хелпзонович
На сайте с 15.06.2005
Offline
133
#1

Они по id связаны? Тестируйте


delete from users_b where id in (select id FROM users_a WHERE date_login <= '1396257390')
Вы там держитесь! Хорошего вам настроения. Здоровья.
дани мапов
На сайте с 06.09.2012
Offline
204
#2

DELETE FROM users_a WHERE id IN

(

SELECT id FROM users_b WHERE date_login <= '1396257390'

);

DELETE FROM users_b WHERE date_login <= '1396257390';

Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)
siv1987
На сайте с 02.04.2009
Offline
427
#3

DELETE a,b FROM users_a a INNER JOIN users_b b ON a.id=b.user WHERE date_login <= '1396257390'

[umka]
На сайте с 25.05.2008
Offline
456
#4

Или свяжите таблицы внешними ключами — само удалится.

Лог в помощь!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий