【发布时间】:2014-12-24 19:32:16
【问题描述】:
这是我的问题:MySQL "Or" Condition
解决方案是将 OR 语句分组,但我使用的是 CodeIgniters Active Record。有没有办法使用 Active Record 对 OR 语句进行分组?还是我必须自己编写查询?
我正在使用 $this->db->where() 和 $this->db->or_where()
它这样写查询:
WHERE title = 'foobar' AND category = 2 OR category = 3
但我需要的是:
WHERE title = 'foobar' AND (category = 2 OR category = 3)
我做不到:
$this->db->where("title = 'foobar' AND (category = 2 OR category = 3)");
因为我正在使用 foreach 循环添加 OR
【问题讨论】:
-
实际上这不会获取任何行,因为它每次都会变成
1 AND 0或0 AND 1=FALSE条件。 -
@karanthakkar 这只是一个获得想法的例子,但你是对的,哈哈
-
你能发布foreach逻辑吗?如果它是一个数组,你可以使用
where_in而不是使用 foreach。
标签: php mysql codeigniter