Задать вопрос
@zlogr

Как удалить запись в таблице при условии, что запись принадлежит к двум id, причем удалить нужно запись только с одним id?

Здравствуйте.
Случился у меня "затуп" с таким, казалось бы простым вопросом.
Прошу помощи.

Есть таблица products_taxons:
product_id | taxon_id
           |
	5	   |  693
	5	   |  694
	5	   |  7
	5	   |  200
	5	   |  305
...


Мне нужно, у всех товаров с таксоном с id 694 , удалить таксон с id 693 .

При таком запросе, удалятся оба 693 и 694.
DELETE FROM products_taxons WHERE taxon_id = 693 AND taxon_id = 694 ;


Подскажите пожалуйста, как правильно?
  • Вопрос задан
  • 224 просмотра
Подписаться 2 Оценить 1 комментарий
Решения вопроса 1
qonand
@qonand
Software Engineer
DELETE FROM products_taxons WHERE taxon_id = 693 AND product_id IN (SELECT DISTINCT(product_id) FROM products_taxons taxon_id = 694)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
VladimirAndreev
@VladimirAndreev
php web dev
SELECT
a.*
FROM products_taxons a
JOIN products_taxons b ON a.product_id = b.product_id
where
b.taxon_id = 694


если этот запрос выбирает правильные строки - то вместо SELECT использовать DELETE
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы