我需要在应用限制之前获取查询的记录数。我尝试使用以下代码:
$db = $this->load->database();
$this->db->select($this->select_column)
->from($this->table);
echo $this->db->count_all_results();
但count_all_results不会返回任何数字。如果我执行$ this-> db-> get(),我获得了结果集,但首先我需要应用限制。
$ this-> db-> count_all_results()可能会发生什么? 是否有其他解决方案可以根据预览查询获取返回的行数?
我正在使用Codeigniter 3和MySQL。
答案 0 :(得分:0)
首先尝试执行以下操作以获取计数:
$this->db->select('count(*) as ct');
$count = $this->db->get($this->table)->result()[0]->ct;
现在您的变量 $ count 具有应用限制所需的计数,因此您可以
$this->db->.... // Your code
答案 1 :(得分:0)
$this->load->database(); // Database is lodaed
$query = $this->db->get('table_name');
return $query->num_rows();
// This will return count of total rows
//After that you can return the result
return $query->result();