Это ссылка на laravel: ( (Где и где) ИЛИ (Где и где)) Laravel 5.2
Это мой код:
$this->db->select('BaseTbl.*');
$this->db->from('tablename as BaseTbl');
// *************** WHERE THIS Based on sendMeetingSchedule = 'YES' ****************
$this->db->where('BaseTbl.companyId', 10);
$this->db->where_not_in('BaseTbl.status', array('Draft'));
$this->db->where('BaseTbl.description !=', '');
$this->db->where('BaseTbl.sendMeetingSchedule', 'Yes');
// *************** OR THIS Based on sendMeetingSchedule = 'NO' ****************
$this->db->or_where('BaseTbl.sendMeetingSchedule', 'No');
$this->db->where('BaseTbl.status', 'Pending Meeting');
$this->db->order_by('BaseTbl.id', 'desc');
Это результат моего запроса:
SELECT `BaseTbl`.* FROM `tablename` as `BaseTbl` WHERE `BaseTbl`.`companyId` = '10' AND `BaseTbl`.`status` NOT IN('Draft') AND `BaseTbl`.`description` != '' AND `BaseTbl`.`sendMeetingSchedule` = 'Yes' OR `BaseTbl`.`sendMeetingSchedule` = 'No' AND `BaseTbl`.`status` = 'Pending Meeting' ORDER BY `BaseTbl`.`id` DESC
Мне нужно предложениеwhere, основанное на столбце sendMeetingSchedule. Если это «ДА», то запускайте предложения верхнего уровня, в противном случае — предложения нижнего уровня в codeigniter.
Это мой желаемый результат запроса:
SELECT `BaseTbl`.* FROM `tablename` as `BaseTbl` WHERE (`BaseTbl`.`companyId` = '10' AND `BaseTbl`.`status` NOT IN('Draft') AND `BaseTbl`.`description` != '' AND `BaseTbl`.`sendMeetingSchedule` = 'Yes') OR (`BaseTbl`.`sendMeetingSchedule` = 'No' AND `BaseTbl`.`status` = 'Pending Meeting') ORDER BY `BaseTbl`.`id` DESC
ПРИМЕЧАНИЕ. Без использования специального предложенияwhere:
$this->db->where('MATCH (field) AGAINST ("value")', NULL, FALSE);
Подробнее здесь: https://stackoverflow.com/questions/630 ... odeigniter