php - 在 Codeigniter 中组合 mysql AND OR 查询

标签 php mysql codeigniter codeigniter-2

我想在 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/

相关文章:

mysql - 如何在数据库中查找具有两个列名的表

php - codeigniter - MySQL - PHP 试图计算不同值的出现次数

php - 如何阻止 GD2 在调整图像大小时洗掉颜色?

c# - 我正在尝试使用 C# 中的 PHP SOAP 服务并在 VS 2010 中创建类包装器

php - 查找数组中的平均值

javascript - onreadystatechange 里面应该有什么?

php - 仅显示某些表中不存在的值。 MySQL

php - 产品与品类的关系,构建查询

php - 使用 PHP 和 Ajax 进行 MySQL 查询

javascript - PHP CodeIgniter - cookie 过期但页面仍然存在,该怎么办?