[英]PHP, MySQL, list records that aren't linked between 2 tables?
好的,我继承了一个真正混乱的数据库,并负责清理它。
问题是……我必须比较2个表。 table1
(成员)和table2
(关联),查找不再具有关联的成员的所有实例,以及关联不再指向成员的位置
关联表table2
有一个名为mbr_id
的字段,您可以将其链接到table1
成员的id
字段。
我假设我将需要某种while循环...但是我怎么不知道如何形成查询。 就像是…
SELECT * FROM `members2`, `assocs` WHERE `assocs.mbr_id` != `members2.id`
是吗 不能...对吗?
那不可能是正确的。 尝试以下两个查询:
select m.*
from members m
where not exists (select 1 from assocs a where a.mbr_id = m.id);
和:
select a.*
from assocs a
where not exists (select 1 from members m where a.mbr_id = m.id);
第一个是没有有效关联的成员。 第二个是没有有效成员的关联。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.