MySQL,检查外键是否分配给任何表

问题描述 投票:0回答:1

我有桌子

files
另外,我有超过 100 个表,我使用关系/外键作为
file_id

如何获取所有不存在关系的

files
(这意味着该文件未附加到任何表)?

sql mysql database-indexes
1个回答
0
投票

不太聪明的方法。复制所有相关的表名称,将它们放入文本编辑器中,编辑所有行以构建一个丑陋的语句,例如:

SELECT * FROM files f WHERE

NOT EXISTS (SELECT file_id FROM xyz1 WHERE f.id = xyz1.file_id)
AND NOT EXISTS (SELECT file_id FROM xyz2 WHERE f.id = xyz2.file_id)
AND NOT EXISTS (SELECT file_id FROM xyz3 WHERE f.id = xyz3.file_id)
;
© www.soinside.com 2019 - 2024. All rights reserved.