In Eloquent, I\'d like to generate this query:
SELECT * FROM table WHERE a=1 AND ( b=2 OR c=3 );
But I seem to be generating this query instead
To wrap queries, you can do something like this:
$builder->where(function ($query) {
$query->where('gender', 'Male')
->where('age', '>=', 18);
})->orWhere(function($query) {
$query->where('gender', 'Female')
->where('age', '>=', 65);
})
It will output the following query:
WHERE (gender = 'Male' and age >= 18) or (gender = 'Female' and age >= 65)