2016-10-18 9 views
0

私は2つのテーブルblogcategoryを持っています。ここではblog.categoryid=category.idです。以下のスニペットでは、少なくとも1つのブログ投稿でアクティブなカテゴリのリストを取得しています。Codeigniter - 主キーが子テーブルで使用されている

$this->db->select('c.*',FALSE); 
$this->db->from('category c'); 
$this->db->where('c.cattype','posts'); 
$this->db->where('c.activefrom <=', date('Y-m-d')); 
/* TODO - where category has atleast one blog post */ 
$this->db->limit(10,$offset); 
$query = $this->db->get(); 
$result = $query->result_array(); 

上記のスニペットは、アクティブカテゴリリストを提供していますが、私はあなたがcategory.idによってblogテーブルやグループに(内部結合)categoryテーブルを結合する場合は少なくとも1件のブログ記事

答えて

1

でアクティブなカテゴリのリストを達成する必要があります少なくとも1つのブログ投稿を持つカテゴリのリストがあります。

これらの行を追加:で

$this->db->join('blog', 'blog.categoryid = category.id'); 
$this->db->group_by('c.id'); 

詳細情報:https://www.codeigniter.com/userguide2/database/active_record.html

関連する問題