我想在 CI 中组合 AND OR mysql 查询。我已经看过这个帖子:http://codeigniter.com/forums/viewthread/92818/ . 但他们没有提供确切的解决方案。
如何严格使用 CI 框架创建以下查询?(我可以轻松创建不带括号的查询,但它不是同一个查询。)
SELECT * FROM `Persons` WHERE
LastName='Svendson' AND Age="12" AND
(FirstName='Tove' OR FirstName='Ola' OR Gender="M" OR Country="India")
P.S.:这只是一个示例查询,即使它没有任何意义也不建议将查询的整个 OR 部分写在单个 where()
中。
编辑:基本上我想要实现以下简单查询:
SELECT * FROM `table` WHERE field1='value1' AND (field2='value2' OR field3='value3')
最佳答案
在 CodeIgniter 3 中有新方法 group_start() and group_end()正是为此目的。
return $this->db
->where('LastName', 'Svendson');
->where('Age', 12);
->group_start()
->where('FirstName','Tove')
->or_where('FirstName','Ola')
->or_where('Gender','M')
->or_where('Country','India')
->group_end()
->get('Persons')
->result();
关于php - 在 Codeigniter 中组合 mysql AND OR 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11056303/