我需要像电子商务网站这样的高级筛选器。当我选中一个复选框时,它需要显示选定范围内的数据。因此,我创建了一些复选框,用于存储2-4、4-8、8-50等值。

为了设置过滤条件,我编写了以下代码

if(!empty($this->request->data['filter']['workinghrs'])) {
    $workinghrsdata = array();
    foreach($this->request->data['filter']['workinghrs'] as $v) {
        $conditions[]['Gig.workinghrs BETWEEN ? AND ?'] =explode('-', $v);
    }
}


哪个生成这个sql。

Gigworkinghrs在2和4之间以及Gigworkinghrs在4和8之间

但是我想将OR运算符设置为AND的位置。所以查询应该像

Gigworkinghrs 2和4之间或Gigworkinghrs 4和8之间

如何解决呢?

最佳答案

OR索引添加到条件数组-

09-27 19:11