OR_LIKE 和 WHERE 同时使用的问题
foreach($Tag as $key=>$val){//$sql .= "NewsTitle LIKE %{$val}% OR";
$this->db->like('NewsTitle',$val,'both');
if($key == count($Tag)-1){
$this->db->or_like('NewsTitle',$val,'both');
}
}
$this->db->where(['NewsState'=>0]);
$this->db->where(['NewsWaste'=>0]);
$this->db->where('NewsId !=',$data['NewsId']);
这样的写法,$this->db->where(['NewsState'=>0]);
$this->db->where(['NewsWaste'=>0]); 不执行了,有人遇到过此问题嘛。 SELECT * FROM `costa_news` WHERE `NewsState` =0 AND `NewsWaste` =0 AND `NewsId` != '100' AND `NewsTitle` LIKE '%巴奴%' OR `NewsTitle` LIKE '%海底捞%' LIMIT 3
再执行顺序上不加括号就无法执行前面几个条件
SELECT * FROM `costa_news` WHERE `NewsState` =0 AND `NewsWaste` =0 AND `NewsId` != '100' AND (`NewsTitle` LIKE '%巴奴%' OR `NewsTitle` LIKE '%海底捞%') LIMIT 3
加上就可以了,但CI默认的方法貌似不加,,除了使用query还有什么好方法? 我也遇到了这个问题,我用的是ci2.0 3.0可以用查询条件组解决http://codeigniter.org.cn/user_guide/database/query_builder.html#id7 好二啊。竟然要用group。老版本怎么用group啊。真二啊。
页:
[1]