具有活动记录的 CodeIgniter COUNT?
CodeIgniter COUNT with active record?
我在 codeigniter 工作..我想数一数。具有相同 order_no 的行数。下面是我的代码。
public function get_my_orders() {
$user_data = $this->session->all_userdata();
$email = $user_data['user_email'];
$this->db->select('*');
$this->db->from('order_details');
$this->db->where('email', $email);
$this->db->group_by('order_no');
$this->db->order_by('order_no', 'DESC');
$query = $this->db->get();
return $query->result();
}
请帮忙..
尝试将 select 行更改为如下所示:
$this->db->select('COUNT(*) as count');
您将只能访问一个名为 count
的变量,而不是像现在这样访问所有字段。为了让所有变量都可访问并添加计数,请改用:
$this->db->select('*, COUNT(*) as count');
请随意更改 count
的小写名称,我只是以此为例。
$query = $this->db->get();
return $query->num_rows(); //Return total no. of rows here
$query->num_rows();
will count the total active record return by your query.
您可以使用$this->db->count_all_results()
public function get_my_orders() {
$user_data = $this->session->all_userdata();
$email = $user_data['user_email'];
//$this->db->select('*');// no need select as you only want counts
$this->db->from('order_details');
$this->db->where('email', $email);
//$this->db->group_by('order_no');//no need group_by as you only want counts
//$this->db->order_by('order_no', 'DESC');//no need order_by as you only want counts
return $this->db->count_all_results();;
}
我在 codeigniter 工作..我想数一数。具有相同 order_no 的行数。下面是我的代码。
public function get_my_orders() {
$user_data = $this->session->all_userdata();
$email = $user_data['user_email'];
$this->db->select('*');
$this->db->from('order_details');
$this->db->where('email', $email);
$this->db->group_by('order_no');
$this->db->order_by('order_no', 'DESC');
$query = $this->db->get();
return $query->result();
}
请帮忙..
尝试将 select 行更改为如下所示:
$this->db->select('COUNT(*) as count');
您将只能访问一个名为 count
的变量,而不是像现在这样访问所有字段。为了让所有变量都可访问并添加计数,请改用:
$this->db->select('*, COUNT(*) as count');
请随意更改 count
的小写名称,我只是以此为例。
$query = $this->db->get();
return $query->num_rows(); //Return total no. of rows here
$query->num_rows();
will count the total active record return by your query.
您可以使用$this->db->count_all_results()
public function get_my_orders() {
$user_data = $this->session->all_userdata();
$email = $user_data['user_email'];
//$this->db->select('*');// no need select as you only want counts
$this->db->from('order_details');
$this->db->where('email', $email);
//$this->db->group_by('order_no');//no need group_by as you only want counts
//$this->db->order_by('order_no', 'DESC');//no need order_by as you only want counts
return $this->db->count_all_results();;
}