我有一個查詢的在它下面的條件(負選擇,從等)笨DB查詢與在,或,和..和像
$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
我甚至不能指出類似的東西。所以任何人有任何想法?如果可能的話,我寧願遠離原始查詢,但如果我必須準備一個並以這種方式進行操作,那麼我會,只是不願意。
我想這個答案也許會有幫助,http://stackoverflow.com/questions/11937867/nested-where-clauses-codeigniter-mysql-查詢/ 11940789#11940789只是拋出'(...)'部分在一個'$ this-> db-> where()'調用爲一個字符串(用'()'s) – complex857
我想你可能會與那個一起。希望有一種方法可以將它分解成多個部分,以便隨着時間的變化更容易地進行更改,並沿着通過隨機條件構建整個查詢的整條線路,但如果這是唯一的情況我認爲,好的發現 – chris