У вас неправильные условия. В настоящее время вы говорите, где min
больше или равно значению, а max
меньше или равно значению (что в теории никогда не должно происходить).
Попробуйте:
$groups = Groups::where("min", '<=', $result->Z)
->where("max", '>=', $result->Z)
->orderBy('min')
->get();
Обратите внимание, что я поменял >=
и <=
вокруг.