我是CI的新手。实际上我想从我的产品表中获取数据。多个where条件,即指定menu_ids,但限制应为1表示我想从每个menu_id中获得一个产品。以下是我的模特,可能是错的。请帮忙。
My Model
public function home_products(){
$this->db->select('*');
$this->db->from('product');
$this->db->where('menu_id', 51, 52, 53, 54, 55, 56);
$this->db->where('product_status', 0);
$this->db->limit('1');
$query = $this->db->get();
return $query->result();
}
答案 0 :(得分:0)
使用$ this-> db-> where_in(' menu_id',array(51,52,53,54,55,56));到位$ this-> db-> where(' menu_id',51,52,53,54,55,56);
答案 1 :(得分:0)
试一试: -
$this->db->select('*');
$this->db->where_in('menu_id', array(51, 52, 53, 54, 55, 56));
$this->db->where('product_status', 0);
$this->db->limit(1);
$query = $this->db->get('product');
return $query->result();
有关详细信息,请参阅CI official doc。
答案 2 :(得分:0)
添加$this->db->group_by('menu_id');
和
变化
$this->db->where('menu_id', 51, 52, 53, 54, 55, 56);
到
$this->db->where_in('menu_id', array(51, 52, 53, 54, 55, 56));
。
最终守则是这样的:
public function home_products(){
$this->db->select('*');
$this->db->from('product');
$this->db->where_in('menu_id', array(51, 52, 53, 54, 55, 56));
$this->db->where('product_status', 0);
$this->db->group_by('menu_id');
$this->db->limit('6');
$query = $this->db->get();
return $query->result();
}