Например, у меня есть столбец с именем json в таблице A
Столбец JSON содержит данные JSON, например:
record 1 : {"dept_code": "012", "unit_code": "22"}
record 2 : {"dept_code": "013", "unit_code": "23"}
etc
Я хочу взять записи данных со столбцом JSON, которые содержат dept_code = 012
Я пытаюсь так:
$id = "012";
$data = \DB::table('table_A')
->select('*')
->where(JSON_EXTRACT('json', "$.dept_code"), '=', '"'.$id.'"')
->get();
Существуют такие ошибки:
Вызов неопределенной функции App \ Http \ Controllers \ JSON_EXTRACT ()
Как я могу решить это?
Вы можете использовать Laravel’s JSON
где пункты. Например.
$id = "012";
$data = DB::table('table_A')
->where('json->dept_code', $id)
->get();
Это работает в Postgres и MySQL (начиная с 5.7.8)
Других решений пока нет …