В одном из моих приложений, основанных на CodeIgniter , я храню данные о стране в столбце в виде значения, разделенного запятыми [Можно передать несколько стран из внешнего интерфейса и, скорее, использовать другую таблицу в качестве отображения (используя foreign_key) Я использую одну таблицу].
Чтобы получить результат на странице поиска, я написал следующий запрос:
$this->db->like('country', $country_id);
В чем проблема, с которой я сталкиваюсь, предположим, что row_1 содержит следующие данные для моего целевого столбца: 1,3,17 и теперь, если я передам $ country_id = 7 , он извлекает row_1 , хотя row_1 напрямую не имеет 7 (но имеет 17) ...
Я знаю, что проблема возникает, когда CodeIgniter преобразует мой запрос как % 7% .
Итак, мой вопрос: есть ли способ опустить символ% до и после search_creteria в CodeIgniter ?
Я имею в виду, CodeIgniter преобразует мой запрос как:
SELECT * FROM table_name WHERE country LIKE '7'
скорее (чем сейчас занимаюсь):
SELECT * FROM table_name WHERE country LIKE '%7%'