首页 >数据库 >mysql教程 >如何使用 LEFT JOIN 从 MySQL 表中删除行?

如何使用 LEFT JOIN 从 MySQL 表中删除行?

Patricia Arquette
Patricia Arquette原创
2024-11-28 07:54:10836浏览

How Can I Delete Rows from a MySQL Table Using a LEFT JOIN?

使用 LEFT JOIN 从 MySQL 表中删除行

问题:

你有两个MySQL 表,一个代表作业截止日期,另一个描述作业。每个作业都有一个状态,某些状态指示应删除相应的截止日期行。使用 LEFT JOIN,您可以选择符合您的条件的截止日期和作业行。但是,当尝试删除这些行时,您会遇到错误。如何修改查询以实现所需的删除?

答案:

要使用 LEFT JOIN 从 MySQL 表中删除行,您必须指定哪个表( s) 从中删除。您遇到的错误很可能是由于遗漏了此规范造成的。

解决方案:

1.仅删除截止日期行:

要仅删除截止日期表中的行,请使用以下查询:

DELETE `deadline` FROM `deadline` LEFT JOIN `job` ON deadline.job_id = job.job_id WHERE ...;

2。删除截止日期和作业行:

要删除截止日期和作业行,请使用以下查询:

DELETE `deadline`, `job` FROM `deadline` LEFT JOIN `job` ON deadline.job_id = job.job_id WHERE ...;

3.仅删除作业行:

要仅删除作业行,请使用以下查询:

DELETE `job` FROM `deadline` LEFT JOIN `job` ON deadline.job_id = job.job_id WHERE ...;

在每种情况下,将 ... 替换为适当的 WHERE 子句指定要删除行的作业状态。

以上是如何使用 LEFT JOIN 从 MySQL 表中删除行?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn