如何使用Codeigniter计算每列的总和

时间:2016-06-09 09:21:15

标签: php mysql codeigniter

控制器

这是控制器页面。

public function index() {
$data = array(
     'year' => $this->year_model->list_all(),
     'speces' => $this->speces_model->list_all(),
       );
          foreach ($data['year'] as $value):

                $temp = array();
                $temp['year_key'] = $value['year-range'];
                $temp['year_id'] = $value['id'];


                $temp['speces_key'] = array();
                foreach ($data['speces'] as $value1):

                    $temp['speces_key'][$value1['name']] = $this->db->get_where('expendituredata', array('spacesId' => $value1['id'], 'yearId' => $value['id']))->row_array();

                endforeach;
                $final_result[] = $temp;

            endforeach;
            $data['result'] = $final_result;
            $this->load->view('site/template', $data);
        }

查看

这是查看文件。

 <table>
 <thead>
      <tr>
        <th>Year Range</th>
        <?php foreach ($speces as $value): ?>
         <th> <?php echo $value['name']; ?></th>
          <?php endforeach; ?>
          <th>TOTAL</th>
           </tr>
  </thead>
   <tbody>
       <?php foreach ($result as $value): ?>
          <?php $sum = 0; ?>
           <tr>
              td><?php echo $value['year_key']; ?></td>

                <?php foreach ($value['speces_key'] as $key => $value2): ?>
                  <td><?php echo $value2['data']; ?></td>
                    <?php $sum+= $value2['data']; ?>
                  <?php endforeach; ?>
                <td><?php echo $sum; ?></td>
                </tr>
     <?php endforeach; ?>
                <tr>
                    <td>Total</td>
                </tr>
</table>

ScreenShot

我的问题:如何在上面的屏幕截图中计算总​​数。

所以请查看以上所有动物的截图和计算总数。

1 个答案:

答案 0 :(得分:0)

尝试使用以下内容:

$select =  array(
                'table.col1',
                'table.col2',
                'table.COW+table.DOG+table.CAT+table.BIRD+table.ARV+table.CAMP as TOTAL'
               );  
$this->db->select($select); 
$this->db->from('expendituredata');   
$this->db->where(array('spacesId' => $value1['id'], 'yearId' => $value['id']));
$this->db->row_array();

或者使用这个简单的SQL查询

select COW+DOG+CAT+BIRD+ARV+CAMP as TOTAL from table where col = 'val';