【发布时间】:2020-10-14 08:48:25
【问题描述】:
我有一个 QueryBuilder 查询,工作正常,但非常贪婪。我想知道我是否可以优化它。
这是我的实体设置: 我有 n(十)个项目(p),有 n(可能是数千)个媒体(m),有 1 个转录(t),有 n(可能是数千)个转录日志(l)。
我想检索所有项目,按其最后的转录日志(createdAt 属性)排序。我想有一些方法可以优化它,但我无法弄清楚自己的。
return $this->createQueryBuilder('p')
->select('p')
->leftJoin('p.medias', 'm')
->leftJoin('m.transcription', 't')
->leftJoin('t.transcriptionLogs', 'l')
->andWhere('p.archived = 0')
->addOrderBy('l.createdAt', 'DESC')
->addOrderBy('p.id', 'DESC')
->getQuery()
->getResult();
谢谢!
【问题讨论】:
标签: symfony doctrine-orm doctrine symfony4 query-builder