@cubaPro

Как найти значение массива в базе данных?

Добрый день.
В бд имеется таблица `events` ( События ) в которой присутствует поле `categories` ( Категории событий )
в поле categories попадает массив с идентификаторами категории такого формата ["1", "2", "3", ит.д].
Вопрос, каким образом можно вывести событие зная id категории.

Я пытался решить задачу таким образом:
$result = $db->query('SELECT * FROM events WHERE categories LIKE "%'.$category_id.'%" ');

Однако этот метод не работает должным образом.
Заранее благодарю за помощь.
  • Вопрос задан
  • 192 просмотра
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
реализовано черезпопно, ну, если не рефакторить, то
$result = $db->query('SELECT * FROM events WHERE categories LIKE' . '%"'. $category_id. '"%' ');

и это грустно (
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@DuD
Вам нужно использовать where categories in ('.implode(",", $category_id).')
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы