[ {"id":4,"sum":19}, {"id":3,"sum":9}, {"id":6,"sum":32}, {"id":2,"sum":32} ]
Я пытаюсь это, но он находит только по 1 значению, как найти по сумме значений "сумма"?
$query->whereJsonContains('programs', [['sum' => intval($search)]]);
Вы можете использовать
//... ->whereRaw( 'JSON_CONTAINS(programs->"$[*].sum", "' . intval($search) . '")')->get();
См. Похожие