Laravel作为内部连接在哪里?
我使用Laravel中的Laravel作为内部连接在哪里?,laravel,laravel-5.4,laravel-5.5,Laravel,Laravel 5.4,Laravel 5.5,我使用Laravel中的whereHas构建查询: })->whereHas('results', function ($query) use ($issued, $mode, $request) { if (($request->get("filter"))) { $query->where('issued', 0); } })->orderBy('created_at'
whereHas
构建查询:
})->whereHas('results', function ($query) use ($issued, $mode, $request) {
if (($request->get("filter"))) {
$query->where('issued', 0);
}
})->orderBy('created_at', 'desc')->paginate();
此查询返回零行,因为表results
中现在有行
$query->where('issued', 0);
如何做到这一点
where has
充当左连接
?现在它作为内部联接工作,whereHas
只返回具有您要查找的关系的模型。如果您只想限制返回的结果
,请尝试使用:
$models = Model::with(['results' => function($query){
$query->where('issued', 0);
}])->get();
Laravel是否支持类似于whereHas的LeftJoin
闭包?您说在结果表中没有发出的行
=0,因此不应该返回任何正确的行。你想要的行为是什么?抱歉,但它不起作用,我尝试过查询它总是返回数据