php - 如何在 CI 中使用 OR 和 AND 运算符进行查询?

标签 php codeigniter

我尝试通过 Active Records 在 Codeigniter 中进行查询:

if (isset($data['where']['and'])) {
     $this->db->where($data['where']['and']);
}

if (isset($data['where']['or'])) {
     $this->db->or_where_in('idSpec', $data['where']['or']);
}

我想得到:

WHERE name = 1 AND (idSpec = 2 OR idSpec = 3 OR idSpec = 4);

但现在我得到:

WHERE name = 1 OR idSpec = 2 OR idSpec = 3 OR idSpec = 4;

最佳答案

使用下面的代码。

if (isset($data['where']['and'])) {
      $this->db->where($data['where']['and']);
    }
    if (isset($data['where']['or'])) {
      $this->db->where("(idSpec = 2 OR idSpec = 3 OR idSpec = 4;)", NULL, FALSE);
    }

关于php - 如何在 CI 中使用 OR 和 AND 运算符进行查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29143828/

相关文章:

php - 如何从联结表中检索值作为字符串?

javascript - 如何用sass为iphone 414px写断点?

php - 变量中的 var_dump() 输出

php - 插入批处理 codeigniter 后重定向不起作用

php - 数据表子行中的二级记录如何显示各自id的?

php - 如何在 WordPress 中为特定元素或功能执行 CSS 和 JS

php - 您将如何前往 Zend Framework 项目中的购物车 "design"?

php - 如何测试我的 MySQL 更新查询在 CodeIgniter 中是否成功?

未找到 PHP ffmpeg

javascript - 无法使变量成为 map 中心