gpt4 book ai didi

php - Doctrine query builder,选择外键

转载 作者:太空宇宙 更新时间:2023-11-03 12:14:11 25 4
gpt4 key购买 nike

我有这个问题:

        $qb = $this->_em->createQueryBuilder();
$qb->select('DISTINCT c.account')
->from('ThanksWhoProjectBundle:Comment', 'c')
->leftjoin('c.account', 'a')
->where('c.conversation = ?1')
->setParameters(array(1 => $conversation));
return $qb->getQuery()->getResult();

因此,字段 Comment.account 是我的实体 Account 的外键。我只需要检索对话中的所有不同帐户。

所以,我只想选择字段c.account,但是这个查询有这个错误:

[Semantical Error] line 0, col 18 near 'account FROM': Error: Invalid PathExpression. Must be a StateFieldPathExpression. (500 Internal Server Error)

我该怎么做?

最佳答案

您需要在加入的帐户 id 上使用DISTINCT:

$qb = $this->_em->createQueryBuilder();
$qb->select('DISTINCT a.id') // note 'a.id'
->from('ThanksWhoProjectBundle:Comment', 'c')
->leftjoin('c.account', 'a')
->where('c.conversation = ?1')
->setParameters(array(1 => $conversation));
return $qb->getQuery()->getResult();

来自官方文档:http://docs.doctrine-project.org/en/latest/reference/dql-doctrine-query-language.html

关于php - Doctrine query builder,选择外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22912559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com