是否有任何工具或简单规则可以将SELECT
转换为DELETE
?我有SQL SELECT
:
SELECT *
FROM Produkter
INNER JOIN ProduktTillhorKategori
ON Produkter.IDProdukt = ProduktTillhorKategori.IDProdukt
WHERE IDKategori = 16
我想转换为DELETE
(SELECT
在我要删除的Produkter
中找到的所有内容)
我尝试了一个例子,但我没有让它工作。如果它有帮助,我正在使用phpmyadmin。
答案 0 :(得分:2)
试试这个:
DELETE Produkter FROM Produkter INNER JOIN ProduktTillhorKategori
WHERE Produkter.IDProdukt = ProduktTillhorKategori.IDProdukt AND IDKategori = 16;
答案 1 :(得分:1)
你应该可以改变它。
DELETE Produkter
FROM Produkter
INNER JOIN ProduktTillhorKategori
ON Produkter.IDProdukt = ProduktTillhorKategori.IDProdukt
WHERE IDKategori = 16
但是,从数据库的角度来看,这不是一个好习惯,因为您会在ProduktTillhorKategori
中获得指向已删除Produkter
的行,因此您也应该删除它们:
DELETE Produkter,ProduktTillhorKategori
FROM Produkter
INNER JOIN ProduktTillhorKategori
ON Produkter.IDProdukt = ProduktTillhorKategori.IDProdukt
WHERE IDKategori = 16