php - SQL命令从数据ID在两个表中的表中删除

标签 php mysql sql-server database phpstorm

我正在尝试删除表 2 中的一行,其中 id 是从表 1 查询中复制的。我想从表 2 和表 1 中删除这一行,但我遇到了一个问题,我使用的命令都有效,但它似乎没有从表中删除。我相信这可能是因为表之间的关系(我使用 mysql workbench 进行数据库设计)

我使用了这个命令:

delete
from doctorsTable
where Users_idUser in (select Users_idUser from Users where idUser = 20)

enter image description here

enter image description here

这是关系: enter image description here

如前所述,我试图从 doctorsTable 中删除 Users_idUser=20 的行,它会自动从 Users 表 idUser 中删除 20。我已经尝试了上面的命令,它似乎运行但它并没有真正删除行.请帮忙 !

最佳答案

我想你想要做的是用一个语句从两个表中删除所有带有 idUser 的行。

您可以通过加入和删除它们来做到这一点:

DELETE doctorsTable, Users
FROM doctorsTable
INNER JOIN Users ON doctorsTable.Users_idUser = Users.idUser
WHERE doctorsTable.Users_idUser = 20

在 DELETE 行中,您指定要从中删除匹配行的表。

关于php - SQL命令从数据ID在两个表中的表中删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36107468/

相关文章:

php - Laravel 显示多对多关系项

php - PDOConnection.php 第 24 行中的 FatalThrowableError Laravel 5.3

php - 从本周获取条目?

php - 无法使用 Flash 应用程序更新 PHP 数据库

sql-server - 给定日期时间范围内的随机日期时间

sql - "Must declare the scalar variable"执行存储过程时出错

php - 如何在以下代码中插入逗号

php - 如何显示用户上传的视频

sql-server - 在SQL Server中,如何将日期转换为M/D/YYYY格式的字符串? (没有前导零,不是 MM/DD/YYYY)

javascript - 我的代码在某些情况下不会刷新父页面