Нужно сделать поиск среди ВСЕХ данных внутри json колонки. Все что нашел в интернете это типа: ->where('column->field', 'LIKE', 'search data')
Но проблема в том, что имеется не типизированная структура и нужно пройти по всем свойствам объекта внутри json колонки. Как это можно сделать?
mShpakov, технический долг - как энтропия: уменьшается только целенаправленными усилиями. И "поздно" для него - только когда проект уже невозможно поддерживать в принципе. Чем раньше будет исправлено неудачное решение, тем меньше сил потребуется на исправление.
Сейчас вы сделаете кривой поиск по кривому хранению, потом придется выпрямлять и то, и другое.
Adamos, я с Вами согласен на все 100%
Проблема в том, что сейчас нет возможности исправить это по быстрому не затрагивая сторонние приложения работающие с этими данными
JhaoDa, интересует так же возможность сделать штатными средствами laravel
Если вам есть что сказать по делу - прошу в ответы. Если нет - прошу молчать и не разводить флуд.
mShpakov, имея в виду, что в будущем все равно придется нормализовать данные - сделать уже нормальную отдельную таблицу, заполнить ее данными из JSON и сделать поиск по ней. Если данные меняются не слишком часто - просто сделать импорт по планировщику. И постепенно переводить на работу с этой таблицей все, что работает с JSON-полем.
А для 9.6 - можете посмотреть jsquery extension, может умеет чего полезного.
Или вручную перебирать структуру, хранимкой на любом языке или запросом через jsonb_each_text и прочие.