【发布时间】:2014-06-04 10:54:09
【问题描述】:
我有 3 个实体
“Ejuridique”与“onetomany”关系
“Project”与“onetomany”关系
“照片”
我需要每个“Ejuridique”的列表以及他的第一个项目和第一个项目的第一张照片,就像这样。
ejuridique1 - project1_1 - 照片1
ejuridique2 - project2_1 - photo1
ejuridique3 - project3_1 - 照片1
并且,我想根据“Ejuridique”的项目总数订购此“Ejuridique”列表
ejuridique2 - project2_1 - photo1(共 3 个项目)
ejuridique1 - project1_1 - photo1(共 2 个项目)
ejuridique3 - project3_1 - photo1(共 1 个项目)
所以我必须进行级联leftjoin并根据每个“Ejuridique”的项目计数对结果进行排序
使用 querybuilder,当我在 leftjoins 之后添加计数时收到错误消息。
非常感谢您的帮助。
【问题讨论】:
-
count(pr.id) as count1有什么问题?使用getScalarResult()而不是getResult()可能会更好。如果我理解您的问题,我猜您需要通过COUNT(DISTINCT(pr.id))构建您的查询 -
错误:“带有键“0,count1”的数组的键'projetcs'不存在“。一些“ejuridiques”没有项目。所以我假设它不能计算不存在的东西?除此之外,kanalkyte 在本机 sql 中执行此操作的建议似乎是一个不错的建议。但是,我目前正忙于阅读文档(即使它似乎不是很明确!)。