Laravel выберите, где json объект содержит - PullRequest
0 голосов
/ 19 июня 2020

У меня есть поле json с такой информацией:

[{"order": 1, "phone": "095412995", "category": "0eb12fc3-a1f7-4a19-af18-c3909c740969", "phoneCode": "+01", "additional": "1256"}, {"order": 1, "phone": "095412995", "category": "0eb12fc3-a1f7-4a19-af18-c3909c740969", "phoneCode": "+01", "additional": "1256"}]

Как я могу выбрать строки, в которых код телефона == +01 или +02, например ?? Я пробовал whereJsonContains, но он всегда возвращает null

Сейчас я использую

$ resource = $ query-> whereJsonContains ($ this-> field, [["phone" => '095412995'] ]) Но мне нужно сделать запрос с несколькими значениями (например, в whereIn), что невозможно с моим запросом

1 Ответ

0 голосов
/ 19 июня 2020

попробуйте это

$data=DB::table('table_name')->whereRaw(
    'JSON_CONTAINS(column_name, \'["'.$phone_code.'"]\')'
     )->paginate(6);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...