經(jīng)常會有統(tǒng)計(jì)類的需求,條件多個(gè),用orWhere拼湊

image.png
如上圖,按照投資金額統(tǒng)計(jì)
后端代碼:

image.png
$arr = [
['number' => 1, 'condition' => [['moneyAll', '<', 200]]],
['number' => 2, 'condition' => [['moneyAll', '>=', 200], ['moneyAll', '<', 1000]]],
['number' => 3, 'condition' => [['moneyAll', '>=', 1000], ['moneyAll', '<', 2000]]],
['number' => 4, 'condition' => [['moneyAll', '>=', 2000]]],
];
$this->where(function ($query) use ($arr, $value) {
foreach ($arr as $v) {
if(in_array($v['number'], $value)){
$query->orWhere($v['condition']);
}
}
});
return $this;

image.png