0

私はcodeigniterにこのようなコードを持っています

foreach ($where as $k=>$v){
    foreach ($v as $val){
        $this->db->or_where($k, $val);  
    }                   
}

しかし、私は'またはグループ'のような場所が欲しい

select * from table where id = '1' and (category = 'tekno' OR category ='biologi');

何か案は?

4

2 に答える 2

3

where 句のより複雑なグループ化が必要な場合は、手動でクエリを作成することに頼ることがよくあります。

$or_where = "";
foreach ($where as $k => $v) {
    foreach ($v as $val) {
        $or_where .= "OR category = '$val' ";
    }                   
}

次に、既存の Active Record クエリに追加できます。

$this->db->where($or_where);

また

$this->db->or_where($or_where);
于 2013-03-08T07:39:30.887 に答える