我有一個商店表,我計算了這些商店位置和客戶位置之間的距離,我想比較距離是否大于商店覆蓋范圍,然后不在列表中顯示該商店我知道可以使用havingRaw,但如果我使用 \DB::table('stores') 但就我而言,我在獲得所有商店后添加了距離列,現(xiàn)在我在刀片中使用它并且工作正常,但想知道是否可以在控制器中執(zhí)行此操作 @if($item->store_coverage >= $item->distance)return $stores->where('distance','>',0 )->where('distance <= store_coverage')->sortBy('distance');希望你能得到我需要的東西
2 回答

侃侃無極
TA貢獻(xiàn)2051條經(jīng)驗 獲得超10個贊
使用集合過濾器助手
$stores->filter(function ($item, $key) { return $item->store_coverage >= $item->distance; });

喵喔喔
TA貢獻(xiàn)1735條經(jīng)驗 獲得超5個贊
您忘記將 where 語句分解為其參數(shù),并在查詢對象上調(diào)用 sortBy,而不是結(jié)果集合。
$stores->where('distance', '>', 0) ->where('distance', '<=', 'store_coverage') ->get() ->sortBy('distance');
- 2 回答
- 0 關(guān)注
- 134 瀏覽
添加回答
舉報
0/150
提交
取消