запрос столбца JSON в SQL с Laravel - PullRequest
0 голосов
/ 19 мая 2018

В таблице БД Seofilter есть столбец json с именем category_ids.Я хочу спросить, где значение существует в JSON Col.

И не запрашивая все строки и получая их значение jsoncol, а затем взрывая их и т. Д., Я хочу сделать это с меньшим количеством запросов к серверу из-за нагрузки на сервер.

например [{60, 59, 57}] или [{55, 58, 60}], так что существует 60 обоих.

Ответы [ 2 ]

0 голосов
/ 05 июня 2018

Laravel 5.6.24 включает в себя whereJsonContains():

DB::table('seofilter')->whereJsonContains('category_id', 60)->get();
DB::table('seofilter')->whereJsonContains('category_id', [60, 61, ...])->get();
0 голосов
/ 19 мая 2018

В MySQL есть группа функций управления и поиска JSON, я думаю, вы найдете здесь то, что хотите, начните с JSON_CONTAINS https://dev.mysql.com/doc/refman/8.0/en/json-search-functions.html#function_json-contains
, что явно соответствует приведенному вами примеру.

...