【问题标题】:Codeigniter count results from joined table来自连接表的 Codeigniter 计数结果
【发布时间】:2015-05-24 11:31:37
【问题描述】:

我正在使用 codeigniter 进行在线讨论,我需要获取所有主题及其所有数据的结果,例如帖子 ID、帖子作者、文本等,还需要计算对该特定主题的回复。

$this->db->where('language', $lang)
         ->order_by('forum_id', 'desc')->limit($limit, $offset)
         ->get('forum');

这是我当前的“数据库选择器”。我的另一个表被称为带有 cols 的响应:response_id、forum_id、作者等。如何加入它?但只是结果的数量?比如:对于这个主题有 0 个答案,对于这个有 3 个答案,不需要来自答案的数据,只需要关于主题和答案数量的数据。但我需要留在那里:

->where('language', $lang)
->order_by('forum_id', 'desc')->limit($limit, $offset)

由于分页和多语言支持。谢谢。

【问题讨论】:

  • 检查this answer
  • @Geril Tpojka works给出的链接..

标签: php mysql sql codeigniter activerecord


【解决方案1】:

谢谢大家,这里是工作代码:

$this->db->where('forum.language', $lang)
         ->order_by('forum.forum_id', 'desc')
         ->limit($limit, $offset)
         ->select('forum.*, COUNT(responses.response_id) as num_answers')
         ->from('forum')
         ->join('responses', 'responses.forum_id = forum.forum_id','left')
         ->group_by('forum_id')
         ->get();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-21
    • 1970-01-01
    • 2019-03-06
    • 1970-01-01
    相关资源
    最近更新 更多