MySQL使用一个变量从多个表中删除

时间:2012-04-10 13:20:55

标签: mysql

我想从三个单独的表中删除三行。这是我的查询,但它似乎无法正常工作。

CREATE PROCEDURE `DB`.`deleteArticle` (IN x INT)
BEGIN

DELETE FROM articles
where article_id=x;

DELETE FROM AUTHORS
where submission_id = select submission_id from article_files where article_id=X;

DELETE FROM article_files
where article_id=X;

END

1 个答案:

答案 0 :(得分:2)

尝试这个

CREATE PROCEDURE `DB`.`deleteArticle` (IN x INT)
BEGIN

DELETE FROM articles
WHERE article_id=x;

DELETE FROM AUTHORS
WHERE submission_id IN (SELECT submission_id FROM article_files WHERE article_id=X);

DELETE FROM article_files
WHERE article_id=X;

END
相关问题