Я знаю, что очень поздно отвечаю на этот вопрос.Просто я делюсь своими знаниями.Это может помочь нам узнать что-то.Если я не прав, пожалуйста, скажите мне.Я отвечаю на этот вопрос полным запросом, который вы разместили на свой вопрос.Пожалуйста, проверьте это ниже.
$this->db->from('mk_terem');
$this->db->select('terem.nev terem_nev, elem_tipus.nev tipus_nev, (IFNULL(cimke.nev,tanar.nev)) nev');
$this->db->join('terem','mk_terem.id_terem=terem.id_terem','left');
$this->db->join('cimke','(mk_terem.id_kicsoda=5 AND mk_terem.id_target=cimke.id_cimke)','left');
$this->db->join('tanar','(mk_terem.id_kicsoda=1 AND mk_terem.id_target=tanar.id_tanar)','left');
$this->db->join('elem_tipus','(mk_terem.id_kicsoda=elem_tipus.id_kicsoda)','left'); $this->db->get();
Я получил запрос, который вы разместили в вопросе как полный запрос.Проверьте это ниже.
SELECT `terem`.`nev` terem_nev, `elem_tipus`.`nev` tipus_nev, (IFNULL(cimke.nev, `tanar`.`nev))` nev FROM (`mk_terem`) LEFT JOIN `terem` ON `mk_terem`.`id_terem`=`terem`.`id_terem` LEFT JOIN `cimke` ON `mk_terem`.`id_kicsoda`=`5` AND mk_terem.id_target=cimke.id_cimke) LEFT JOIN `tanar` ON `mk_terem`.`id_kicsoda`=`1` AND mk_terem.id_target=tanar.id_tanar) LEFT JOIN `elem_tipus` ON `mk_terem`.`id_kicsoda`=`elem_tipus`.`id_kicsoda)`
Я полагаю, что все возможно сделать с помощью активной записи codeignitor.Нет необходимости выполнять запрос в $this->db->query()
как raw sql.
@ uzsolt: я объясняю это из-за аргумента, приведенного вами в теме "/6000291/napisanie-sql-zaprosov-v-codeigniter-2-0"., и я попробую другие ваши ошибки, которые вы опубликовали вприведенный выше URL слишком короток и свяжемся с вами. Если я что-то не так, пожалуйста, дайте мне знать. Спасибо.:)