简体   繁体   English

搜索与Doctrine2的多对多关系

[英]Search in many-to-many relationship with Doctrine2

This is probably an easy one but I can't figure it out nor find an answer. 这可能很容易,但我无法弄清楚,也找不到答案。

I have a simple Article and ArticleTag Entities with many to many relationship. 我有一个简单的文章和ArticleTag实体有很多关系。 How can I get all articles with a certain tag (or tags)? 如何获得带有特定标签(或标签)的所有文章?

My following tries: 我的以下尝试:

$qb = $repository->createQueryBuilder('a')
    // ...
    ->andWhere('a.tags = :tag')
    ->setParameter('tag', 'mytag')
    // ...

or 要么

    ->andWhere(':tag in a.tags')
    ->setParameter('tag', 'mytag')

...didn't work. ......没用 Thanks! 谢谢!

And the winner is ... drumroll, please ... 获胜者是...... 鼓,请 ...

$qb = $repository->createQueryBuilder('a')
    // ...
    ->andWhere(':tag MEMBER OF a.tags');
    ->setParameter('tag', $tag);
    // ...

Thanks to everyone who has taken the time to read and think about my question! 感谢所有花时间阅读和思考我的问题的人!

我想你可以提供这个例子(来自文档):

$query = $em->createQuery('SELECT u.id FROM CmsUser u WHERE EXISTS (SELECT p.phonenumber FROM CmsPhonenumber p WHERE p.user = u.id)');

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM