以下是我用于获取营地结果的查询:
DELIMITER
但结果没有正确排序。我已经了解到我必须join the tables所以现在我的查询看起来像这样:
$camp = Camp::where('camps.id', $camp_id)
->with(['athletes' => function ($q) use ($camp_id) {
$q->with(['kickoffs' => function ($q) use ($camp_id) {
$q->where('camp_id', $camp_id);
$q->orderBy('id', 'desc');
}]);
$q->with(['kickoff_results' => function ($q) use ($camp_id) {
$q->where('camp_id', $camp_id);
$q->orderBy('score', 'desc');
}]);
但这似乎让我回到了同样的事情。我觉得我的第一次查询结果更准确,但排序不正确。
非常感谢任何建议!
答案 0 :(得分:0)
在辅助表中创建外键 并按如下方式加入表格:
DB::table('leads')->select('sec_tbname.sec_tbfk','sec_tbname.join_pm','prm_tbname.prm_tbpm')
->join('pm_tbname','sec_tbname.sec_tbfk','=','pm_tbname.id')
->get();