我正在使用symfony2
申请。我正在使用这个查询:
$contents = $em->getRepository('BbdBongoAppBundle:Content')
->createQueryBuilder('c')
->select('c.id, c.title, c.sequence, c.sequence_count, c.category_sequence, c.unique_id, c.priority, c.status')
->addSelect('o.slug as owner')
->addSelect('cat.slug as category')
->addSelect('m.name as media')
->innerJoin('c.content_owner', 'o')
->innerJoin('c.category', 'cat')
->innerJoin('c.media', 'm')
->getQuery()
->getArrayResult();
一切都在我添加->innerJoin('c.media', 'm')
之前,因为它是内容标题,如果媒体有两个值,则所有其他内容都返回两次,即(YouTube,网站)如果媒体有一个值返回单个结果但是如果它有多个它返回多个结果。
我想要的是单个结果中所有媒体的单一标题。即(泰坦尼克号,YouTube,网站)现在它的回归(泰坦尼克号,YouTube,泰坦尼克号,网站)看到泰坦尼克号是两次。
感谢。
答案 0 :(得分:0)
使用此行,您不处于学说的对象模式。
->select('c.id, c.title, c.sequence, c.sequence_count, c.category_sequence, c.unique_id, c.priority, c.status')
通过将其更改为以下代码,您仍将拥有对象表示:
->select('c{id,title,sequence,sequence_count,category_sequence,unique_id,priority,status}')