swaro
@swaro
Nice code - awesome bugs

Как искать по JSON в MariaDB?

Здравствуйте! У меня в базе банных (MariaDB) есть таблица с записями, у каждой записи есть поле с тегами. Теги записаны в виде массива JSON. Выглядит это примерно так:
id | tags
---+-------
1  | ["first", "second", "third"]
2  | ["first", "target", "second", "third"]
3  | ["foo", "bar"]

Так вот, мне нужно выбрать все записи, у которых, к примеру, в поле "tags" будут теги "target" и "first". Так, чтобы результат выглядел так:
id | tags
---+-------
2  | ["first", "target", "second", "third"]

Вопрос: как это можно сделать? И можно пример?
  • Вопрос задан
  • 1220 просмотров
Пригласить эксперта
Ответы на вопрос 2
@Genri_Rus
Насколько я понял, то можно вот так:
"SELECT * FROM `table_name` WHERE JSON_CONTAINS(tags, '{\"target\", \"first\"}')"

Версия MariaDB, которая поддерживает данные функции должна быть не ниже 10.2.3
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
29 мар. 2024, в 09:44
20000 руб./за проект
29 мар. 2024, в 09:31
1000 руб./в час
29 мар. 2024, в 07:55
15000 руб./за проект