Построитель запросов Codeigniter отключить кавычки
Я использую Query Builder на CodeIgniter 3. с БД Oracle. Я не могу создать нормальный запрос. Мой запрос:
$CI->db->query('c.*',false);
$CI->db->from('COUNTRIES c',false);
$CI->db->join('FILIALS as f','f.country_id=c.country_id',false);
$CI->db->where('f.FILIAL_ID',$id,false);
$query=$CI->db->get();
return $query->result('Country')[0];
Это дает мне запрос
SELECT c.* FROM "COUNTRIES" "c" JOIN "FILIALS" as "f" ON "f"."country_id"="c"."country_id" WHERE f.FILIAL_ID = 7
Но этот запрос не работает, жалуясь, что запрос не правильный. В Sqlplus такая же проблема. Но если я запускаю вручную в sqlplus, удаляя "как" и кавычки в полях таблицы и именах таблиц, это работает нормально. Это мой рабочий запрос:
SELECT c.* FROM "COUNTRIES" c JOIN "FILIALS" f ON f.country_id=c.country_id WHERE f.FILIAL_ID = 7
Как я могу сказать Query Builder, удалить "как" и квотирования в запросе.
2 ответа
Попробуйте этот запрос:
$this->db->select('c.*',false);
$this->db->from('COUNTRIES c',false);
$this->db->join('FILIALS as f','f.country_id=c.country_id',false);
$this->db->where('f.FILIAL_ID',$id,false);
$query = $this->db->get();
return $query->result();
Удалить AS из соединения
Я это сделал.
$this->db->select('c.*',false);
$this->db->from('COUNTRIES c',false);
$this->db->join('FILIALS f','f.country_id=c.country_id',false);
$this->db->where('f.FILIAL_ID',$id,false);
$query = $this->db->get();
return $query->result();