我有一个关于关系数据库的问题。我知道在使用它时我应该正确设置我的外键但我没有立即这样做所以现在我必须清理我凌乱的数据库以删除关系破裂的条目。我的表格看起来有点像这样:
链接
|编号 |网址 |其他不相关的领域 |
LINK_USERS
|编号 |链接 ID |其他不相关的领域 |
LINK_USERS通过link_id字段(即LINKS表中表项的id)可以看出LINK_USERS与LINKS有关系
我已经弄乱了一段时间,但不知何故,我似乎无法从 LINK_USERS 中选择所有在 LINKS 中没有引用的行。
我必须在这里补充一点,删除应该只发生在 LINKS 表上。所以我想从查询中选择所有行 FROM LINK_USERS WHERE link_id 在 LINKS 表中找不到。
您可能已经想到,我不是 MySQL 大师。如果我的问题含糊不清,请告诉我,我会尝试更好地表述。
提前致谢!
最佳答案
你的问题一点都不模糊;你可以用非常简单的 SQL 得到你想要的东西(它看起来很像你对你正在寻找的东西的英语描述):
SELECT * FROM LINK_USERS WHERE link_id NOT IN (SELECT id FROM LINKS);
关于mysql - 在 MySQL 中查找断开的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12695963/