我有两个包含成员数据的表-'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/