у меня есть две таблицы как следующие 1> пользователи 2> profile_action
id name uid profile_id action_type
1 aa 1 2 bookmark
2 bb 2 3 view
3 cc 1 3 like
Теперь я хочу данные, основанные на следующих двух условиях
- где uid! = M_session_id в таблице действий профиля
- и удалить пользователей, которые мне понравились или добавили в закладки
так что для этого я сделал следующее
$bscDta = $this->db->select('profile_id')
->from('profile_action')
->where(array('user_id'=>1,'action_type'=>'like'))
->or_where('action_type','bookmark')
->get();
$exceptionalId = $bscDta->result();
foreach ($exceptionalId as $exid) {
$excptnlId .= $exid->profile_id.",";
}
$excptnlId = rtrim($excptnlId,",");
$quickSrch = $this->db->select('*')
->from('users')
->where(array('id!='=>1,'status'=>'Active'))
->where_not_in('id', $excptnlId)
->get();
$quickSrchData = $quickSrch->result();
Но он вернет следующий запрос
SELECT * FROM `users` WHERE `id` != 1 AND `status` = 'Active' AND `id` NOT IN('2,3')
и о / п мне
[id] => 3 's data
там, где ожидаемое значение o / p пустое. так есть ли другой способ сделать обе операции
в одной операции.