【发布时间】:2015-10-14 01:16:23
【问题描述】:
我有 3 个模型,分别代表 参加者 可以注册的 计划 和 计划段trong>。
- ScheduledPrograms 有很多
- ScheduledProgramSegments 属于许多
- 参加者 (属于许多ScheduledProgramSegments)
与会者有一个字段已注册,它是一个布尔值 1/0,用于指示与会者是否已注册。
我想做一个查询,以查找程序的 ProgramSegments 中的最大参加者注册计数。 IE。像
Max( ScheduledProgram::find(id)->ScheduledProgramSegments->with([('attendees') => function($query)
{
$query->where('registered');
}])->count();
);
有没有办法在 Eloquent 或 Query Builder 中编写这个查询?如果这是唯一的方法,即使使用查询生成器中的原始表达式?
编辑:澄清一下,我有一个带有字段registered 的数据透视表,我想立即加载标记为registered 的记录数。
到目前为止,除非我添加和维护一个我不想做的计数字段,否则这似乎是不可能的,所以我运行一个单独的查询来获取我从数据透视表中检索到的每条记录的计数表。
【问题讨论】: