繁体   English   中英

如何计算相关表中的行数

[英]how to count number of rows in related table

我的数据库中有两个表

文章具有以下字段

id 作者 post_date 修改标题 section_id 查看精选内容 post_status

具有以下字段的部分

  • sec_id 描述 slug 类别

我的 model 中有一个 function 以返回所有部分

function get_all() {
            $q = $this->db->select('sec_id,category,slug,description')
                            ->from('sections')
                        ->order_by('category','asc');
            $ret['rows'] = $q->get()->result();
            return $ret;
        }

我在表格中显示这个

<div id="categories">

<div id="toolbar">
</div>

<table>
<thead class="table_header">
<tr>
<th><input type="checkbox" name="check_all" id="master_box" onclick="toggle(this)" /></th>
<?php foreach($fields as $field_name => $field_display):?>
<th><?php echo $field_display ?></th>
<?php endforeach; ?>
</tr>
</thead>

<tfoot class="table_header">
<tr>
<th><input type="checkbox" name="check_all" id="master_box" onclick="toggle(this)" /></th>
<?php foreach($fields as $field_name => $field_display):?>
<th><?php echo $field_display ?></th>
<?php endforeach; ?>
</tr>
</tfoot>

<tbody>
<?php foreach($categories as $cat):?>
<tr>
<td><input id="sec_id"name="id[]" type="checkbox" value="<?php echo $cat->sec_id; ?>" /></td>
<td><?php echo $cat->category; ?></td>
<td><?php echo $cat->description; ?></td>
<td><?php echo $cat->slug; ?></td>
<td></td>
</tr>
<?php endforeach;?>
</tbody>

</table>

</div>

如果您注意到有一个空标签。它旨在显示类别(部分)中的文章数量。

如何获得与每个类别相关的文章数量?

SELECT s.sec_id,s.category,s.slug,s.description,COUNT(a.id) FROM sections s 
    LEFT JOIN articale a ON s.sec_id = a.section_id 
WHERE 1 
GROUP BY s.sec_id 
ORDER BY s.category ASC 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM