两个表加入两个结果

时间:2013-11-21 22:37:17

标签: php mysql sql codeigniter activerecord

我有两张表,一张是博客新闻,另一张是文章。我需要做的就是加入他们所以我有这样的代码

$query = $this->db->select('*')
              ->from('blogs')
          ->select('blogs.id as BlogId....')
      ->join('articles', 'articles.highlight = 1', 'left')
      ->join('authors', 'articles.author = authors.id', 'left')
      ->join('companies', 'authors.company_id = companies.id')
      ->get();

加入工作正常,但后来我需要对foreach中的数据做回声,这里我的问题来了。我在文章下面有重复的博客。所以如果我每篇博文都有5篇文章(我只有一篇)。有没有办法只显示一个博客,然后是文章?

由于

1 个答案:

答案 0 :(得分:0)

大多数人都会告诉你在外面的桌子上走路,但那太可怕了。尝试在结果数组上使用Underscore库http://brianhaveri.github.com/Underscore.php/#groupBy,如下所示:

http://codebyjeff.com/blog/2012/08/no-more-machine-gunning-use-underscore-php