Есть поле json и данные в нем хранятся таким образом ["a","b","c"]
Данные, которые будут приходить в это поле разные, но результат должен отдаваться, если будет хотя бы одно совпадение по полю.
Но наткнулся на такую проблему, если передать в поле (Например такое в бд лежит ["a","b","c","d"]) такие данные ['a','b','zxc'] то уже ничего не найдет, если ['a','b'] или ['a','b',' c'] то работает как надо
сам запрос
SELECT * FROM table_test WHERE JSON_CONTAINS(field_json, json_array('a','b','ddd'));
Как вариант решения думал генерировать сам запрос по чучуть типо таким образом, но думаю такое решение ударит по производительности сильно
SELECT * FROM table_test WHERE JSON_CONTAINS(field_json, json_array('a')) OR JSON_CONTAINS(field_json, json_array('b')) OR JSON_CONTAINS(field_json, json_array('ddd'));