首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL从2个表中删除记录

MySQL从2个表中删除记录
EN

Stack Overflow用户
提问于 2010-07-08 15:29:06
回答 5查看 8K关注 0票数 4

我希望根据ID在1个查询中删除两个不同表中的信息。

我在这里尝试过几个解决方案来完成这个任务,但仍然没有完成我想要做的事情。

表1-内容

代码语言:javascript
复制
---------- ---------
 ContentID | Content
--------------------

表2-选票

代码语言:javascript
复制
---------------------------
 VoteID | ContentID | Vote 
---------------------------

我希望根据其ID、删除内容行,all或all,(可能有0的投票记录)。我做不想使用事务、级联删除,或者使用两个不同的查询。

这里最好的是什么-左加入?内连接?

这里的任何帮助都将不胜感激。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-07-08 16:26:03

代码语言:javascript
复制
DELETE Content, Votes
FROM Content
LEFT JOIN Votes
ON Votes.ContentID = Content.ContentID
WHERE Content.ContentID = ?
票数 9
EN

Stack Overflow用户

发布于 2010-07-08 15:33:11

如果您有关系,可以尝试使用这个删除级联选项。

另一种选择是创建一个存储过程,并在两个步骤中执行删除,但只使用一个服务器调用。

票数 3
EN

Stack Overflow用户

发布于 2010-07-08 15:32:17

代码语言:javascript
复制
DELETE t1, t2 FROM t1 INNER JOIN t2 INNER JOIN t3
WHERE t1.id=t2.id AND t2.id=t3.id;

虽然这是三张桌子,但我相信你可以根据你的需要来调整它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3205261

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档