Я считаю, есть две проблемы. Первая проблема заключается в том, что вы используете слишком много кавычек во второй join
строке в запросе:
У вас есть: $this->db->join('schedule', 'schedule.itemtype='testitem'');
< дополнительные цитаты
Это должно быть: $this->db->join('schedule', 'schedule.itemtype=testitem');
Вторая проблема : ваше соединение не имеет смысла.
Ваше утверждение:
$this->db->select();
$this->db->from('we');
$this->db->join('schedule', 'schedule.itemid = we.cid');
$this->db->join('schedule', 'schedule.itemtype = testitem');
$this->db->where('we.isActive','Y');
Переводит на:
SELECT * FROM we
JOIN schedule ON schedule.itemid = we.cid
JOIN schedule ON schedule.itemtype = testitem
WHERE we.isActive = Y
Как вы можете видеть, вы присоединяетесь к тем же таблицам дважды на разных линиях, не только это, но то, что таблица делает «testitem» принадлежит к? Остается предположить, что вы, возможно, хотите присоединиться, где ItemType = testitem который будет означать следующее:
SELECT * FROM we
JOIN schedule ON schedule.itemid = we.cid
WHERE schedule.itemtype = testitem
AND we.isActive = Y
Поэтому окончательный запрос Codeigniter должен быть:
$this->db->select('*');
$this->db->from('we');
$this->db->join('schedule', 'schedule.itemid = we.cid');
$this->db->where('schedule.itemtype', 'testitem');
$this->db->where('we.isActive','Y');
'$ this-> db-> Join ('расписание', 'schedule.itemtype = 'testitem'');' почему присоединиться? должен быть '$ this-> db-> где ('schedule.itemtype', 'testitem')' –