【发布时间】:2011-08-15 14:57:36
【问题描述】:
根据用户的选择,我需要过滤查询中的结果,但我不知道如何在 AND 之后正确实现动态 OR 语句。我目前在 CodeIgniter 中使用 Active Record,但这可能需要更改。
我基本上需要创建以下 sn-p:“WHERE city.id = 9 AND (eventType = 8 or eventType = 9)”
- 如果没有 OR 语句,那么我不需要 AND
- 可能有 1-n 个 OR 语句
我目前的代码如下:
$this->db->where('city.id =', $cityID);
if ($eventTypes != NULL){
foreach ($eventTypes as $item){
$eventTypeID = intval($item);
$this->db->or_where('eventtype.id =', $eventTypeID);
}
}
这会产生:WHERE city.id = 13 OR eventtype.id = 6 OR eventtype.id = 8 ...所以我需要 AND (
【问题讨论】:
标签: php sql codeigniter