Reputation: 85
$query->orWhere(['member_id'=> $participant['id'], "event_id"=>$event_id, 'member_status'=>'1'])
on Debugging the Above query using toSql() , i Found this
select * from group_members where group_members.`event_id` = 5 and group_members.`event_id` is not null and (member_id = ? and event_id = ? and member_status = ?) or (member_id = ? or event_id = ? or member_status = ?)
However I want it to be like,
select * from group_members where group_members.`event_id` = 5 and group_members.`event_id` is not null and (member_id = ? and event_id = ? and member_status = ?) or (member_id = ? and event_id = ? and member_status = ?)
How do I achieve this?
Thanks in advance
Upvotes: 1
Views: 975
Reputation: 1285
Try this:
$query->where(function($query) {
$query->where(['member_id'=> $participant['id'], "event_id"=>$event_id, 'member_status'=>'1']);
})->orWhere(function($query) {
$query->where(['member_id'=> $participant['id'], "event_id"=>$event_id, 'member_status'=>'1']);
});
Upvotes: 4