经常会有统计类的需求,条件多个,用orWhere拼凑
image.png
如上图,按照投资金额统计
后端代码:
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