我查询下面的条件(减去select,from等)
$this->db->where('show_year', $yyyy);
$this->db->or_where('idn', $idn);
$this->db->or_like('post_slug', $idn);
形成
SELECT * FROM (`nyb_articles`)
WHERE `show_year` = '2009'
OR `idn` = 'the'
AND `post_slug` LIKE '%the%'
但是我希望它更像是
SELECT * FROM (`nyb_articles`)
WHERE `show_year` = '2009'
AND (`idn` = 'the' OR `post_slug` LIKE '%the%')
我的问题是我不确定CI的活动记录是否支持这一概念,如果确实如此,我将如何处理它,因为我无法在文档中的任何地方找到它的概念。无论我如何更改like
,or_like
,where
,or_where
,我甚至无法修改类似内容。所以任何人都有任何想法?如果可能的话,我宁愿远离原始查询,但如果我必须准备一个并按这样做,我会,只是不愿意。
答案 0 :(得分:2)
你试过这个吗?
SELECT * FROM (`nyb_articles`)
WHERE `show_year` = '2009' AND `idn` = 'the'
OR `show_year`='2009' AND `post_slug` LIKE '%the%'
我认为以下内容会产生上述表达式:
$this->db->select(...)->from(...)->
where("show_year","2009")->where("idn","the")->
or_where("show_year","2009")->like("post_slug","%the%")