Tôi có một truy vấn các điều kiện của nó dưới đây (trừ lựa chọn, từ, vv)CodeIgniter DB Query với nơi, hoặc, và .. và như
$this->db->where('show_year', $yyyy);
$this->db->or_where('idn', $idn);
$this->db->or_like('post_slug', $idn);
mà tạo
SELECT * FROM (`nyb_articles`)
WHERE `show_year` = '2009'
OR `idn` = 'the'
AND `post_slug` LIKE '%the%'
Tuy nhiên Tôi muốn có nó giống như
SELECT * FROM (`nyb_articles`)
WHERE `show_year` = '2009'
AND (`idn` = 'the' OR `post_slug` LIKE '%the%')
Vấn đề của tôi là không chắc liệu hồ sơ hoạt động của CI có hỗ trợ quan niệm này không, và nếu có, Tôi giải quyết nó, vì tôi không thể tìm thấy khái niệm về nó ở bất cứ đâu trong tài liệu. Bất kể tôi thay đổi số like
, or_like
, where
, or_where
Tôi thậm chí không thể làm được điều gì đó tương tự. Vì vậy, bất cứ ai có bất kỳ ý tưởng? Tôi muốn tránh xa một truy vấn thô nếu có thể, nhưng nếu tôi phải chuẩn bị một và làm theo cách đó, tôi sẽ không thích.
Tôi nghĩ rằng câu trả lời này có thể giúp đỡ, http://stackoverflow.com/questions/11937867/nested-where-clauses-codeigniter-mysql- truy vấn/11940789 # 11940789 chỉ cần ném phần '(...)' bên trong một '$ this-> db-> where()' gọi dưới dạng một chuỗi (với '()' s) – complex857
Tôi nghĩ bạn có thể đang ở trên một cái gì đó với cái đó. Hy vọng rằng có một phương tiện để nó vẫn được chia nhỏ thành từng phần để làm cho nó dễ dàng thay đổi theo thời gian như được tinh chế của nó, và chạy xuống dòng để xây dựng toàn bộ truy vấn trong toàn bộ các điều kiện ngẫu nhiên, nhưng nếu đây là trường hợp duy nhất Bị mất nó, tốt tìm thấy – chris