Задать вопрос
@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();
не находят как правильно реализовать запрос ?
  • Вопрос задан
  • 60 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
Immortal_pony
@Immortal_pony Куратор тега MySQL
Если у вас данные в JSON, то и работайте с JSON:
->where("JSON_UNQUOTE(JSON_EXTRACT(`params`, '$.user_id'))=:user_id", compact("user_id"))
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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