选择删除

时间:2014-07-11 07:10:07

标签: mysql sql phpmyadmin

是否有任何工具或简单规则可以将SELECT转换为DELETE?我有SQL SELECT

SELECT *
FROM Produkter
INNER JOIN ProduktTillhorKategori
ON Produkter.IDProdukt = ProduktTillhorKategori.IDProdukt
WHERE IDKategori = 16

我想转换为DELETESELECT在我要删除的Produkter中找到的所有内容)

我尝试了一个例子,但我没有让它工作。如果它有帮助,我正在使用phpmyadmin。

2 个答案:

答案 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