我想运行此查询,但是使用 laravel查询生成器,我无法使用orWhere和where子句获得确切的结果
SELECT * FROM lectures WHERE school=6 AND ( (period=3 AND class_section=3) OR (period=4 AND teacher=17) )
那么我该如何使用laravel查询生成器来做到这一点?
答案 0 :(得分:0)
您需要使用Parameter Grouping
将查询翻译为查询生成器表单
DB::table('lectures)
->where('school', '=', 6)
->where(function ($query) {
$query->where(function ($query) {
$query->where('period', '=', 3)
->where('class_section', '=', 3)
})->orWhere(function ($query) {
$query->where('period', '=', 4)
->where('class_section', '=', 17)
});
})
->get();