我有一个简单的问题。
我有一些用户。我有一些联系人。单个User
可以有一些联系人。一个Contact
可能由许多Users
拥有,一个简单的ManyToMany
关系:
User <-> user_contact <-> Contact
如何构建一个查询,该查询将返回类似于不属于User
的所有Contact
的内容。这些联系人可能归其他User
所有,也可能不属于其他联系人。
MEMBER OF
选项将发挥魔力。
我认为您正在寻找这样的东西:
$em->createQuery("select c from Contract c where :userId NOT MEMBER OF c.Users")
->setParameter("groupId", <<YOUR_USER_ENTITY_OR_USER_ID>>)
->getResult();
当然,我不知道你的实体,但我认为这会给你一些想法。