Optimization 返回查询结果和单个函数中的总行数

Optimization 返回查询结果和单个函数中的总行数,optimization,codeigniter,count,Optimization,Codeigniter,Count,这是一个问题,如果有其他替代方案或是唯一的方法,则可能会以最佳方式工作: 使用Codeigniter。。。我有两个典型的功能:列出记录,并使用页面作为替代显示记录总数。问题是它们相当大。我的模型中的示例2函数: 计算行数: 每页结果 你看,我重复了大部分的函数,区别在于只有字段和管理页面的数量 我想知道是否有其他方法可以在单个函数中获得与查询一样多的结果。我看过很多教程,都创建了两个函数:一个用于计数,另一个用于显示结果。。。会有更优化的吗?您必须在查询中使用SQL\u CALC\u FOUND

这是一个问题,如果有其他替代方案或是唯一的方法,则可能会以最佳方式工作:

使用Codeigniter。。。我有两个典型的功能:列出记录,并使用页面作为替代显示记录总数。问题是它们相当大。我的模型中的示例2函数:

计算行数:

每页结果

你看,我重复了大部分的函数,区别在于只有字段和管理页面的数量

我想知道是否有其他方法可以在单个函数中获得与查询一样多的结果。我看过很多教程,都创建了两个函数:一个用于计数,另一个用于显示结果。。。会有更优化的吗?

您必须在查询中使用SQL\u CALC\u FOUND\u行,如下所示:

SELECT SQL_CALC_FOUND_ROWS first_name, age FROM table
要返回结果,只需创建一个新数组:

$result['total'] = $this->db->query("SELECT FOUND_ROWS() as total")->row_array();
$result['result_array'] = $query->result();
return $result;

我猜使用SELECT COUNT*FROM。。。不是选项吗?类似于SQL\u CALC\u FOUND\u ROWS
SELECT SQL_CALC_FOUND_ROWS first_name, age FROM table
$result['total'] = $this->db->query("SELECT FOUND_ROWS() as total")->row_array();
$result['result_array'] = $query->result();
return $result;