我有两个包含成员数据的表-'members'和'member_data'。由于某些原因(我已经继承了这一点),member_data表的记录比members表的记录多。两个表都有一个member_id列,该列似乎与两个表之间的用户信息匹配。

如果在“ member_data”表中找不到匹配的“ member_id”,我想从“ members”表中删除记录。有人可以指出我正确的方向吗?

最佳答案

您可以尝试使用NOT IN语句:

DELETE FROM `member_data`
WHERE `member_data`.`member_id`
NOT IN (
   SELECT `members`.`member_id`
   FROM `members`
);


无论如何,您应该纠正插入或不删除意外行的错误。

关于mysql - 根据另一个表中的不存在从一个表中删除记录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13635469/

10-16 17:20