gpt4 book ai didi

mysql - 当存在不匹配记录时从多个表中删除

转载 作者:行者123 更新时间:2023-11-29 19:07:30 25 4
gpt4 key购买 nike

我有一个使用 mysql 的查询,如下所示:

Delete A, B, C 
FROM FROM A
INNER JOIN B
ON A.a = B.a
INNER JOIN C
ON B.c = C.c
WHERE A.a = 'value'.

如果找到匹配的记录,则此查询可以正常工作。但就我而言,可能存在在表 B 和表 C 上找不到匹配记录的情况。发生这种情况时,我仍然希望表 A 上的记录仍然被删除。我看到了从表中逐个删除的选项,但这个过程漫长而忙碌。有关如何解决此问题的任何帮助吗?

最佳答案

如果您想让 B 和 C 的连接成为可选的,那么您应该使用 LEFT JOIN 而不是 INNER JOIN

例如,这样的查询应该完成您想要做的事情:

 Delete A, B, C 
FROM A
LEFT JOIN B
ON A.a = B.a
LEFT JOIN C
ON B.c = C.c
WHERE A.a = 'value'

关于mysql - 当存在不匹配记录时从多个表中删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43370839/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com