我想加入多个条件:
->join('filters', function($join) {
$join->on('filters.result_id', '=', 'results.id');
$join->on('filters.result_filter_id', '=', 2);
$join->on('filters.value', '>', 1);
})
这会导致错误:
“ on子句”中的未知列“ 2”
如何在联接条件上使用实际值,而不必雄辩地将其解释为列名?它可以与实际的SQL查询配合使用:
JOIN filters ON filters.result_id = results.id
AND filters.result_filter_id = 2
AND filters.value > 1
最佳答案
如果要过滤联接,请用on
替换where
如果要在联接上使用“ where”样式子句,则可以在联接上使用where和orWhere方法
->join('filters', function($join) {
$join->on('filters.result_id', '=', 'results.id')
->where('filters.result_filter_id', '=', 2)
->where('filters.value', '>', 1);
})
Documentation
关于mysql - laravel具有整数值的多个联接条件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50020428/