Задать вопрос
@samuser
programmer

Как сделать поиск в mysql по такому запису?

Имеется таблица с полями id и params
таблица содержит данные в виде
id | params
1 | {"user_id":"31"}
2 | {"user_id":"31"}
3 | {"user_id":"32"}

$user_id = 31
$users = Users::query()
->where("params LIKE :query:",["query" => "%'user_id':'%$user_id%'%"])
->execute();
не находят как правильно реализовать запрос ?
  • Вопрос задан
  • 61 просмотр
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • Shultais Education
    Продвинутый SQL
    1 месяц
    Далее
  • Merion Academy
    Основы реляционных баз данных SQL
    1 месяц
    Далее
Пригласить эксперта
Ответы на вопрос 1
Immortal_pony
@Immortal_pony Куратор тега MySQL
Если у вас данные в JSON, то и работайте с JSON:
->where("JSON_UNQUOTE(JSON_EXTRACT(`params`, '$.user_id'))=:user_id", compact("user_id"))
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы