id | name | status
1 | name | yes
2 | name | no
3 | name | yes
如何计算总状态值为yes,值为no否使用活动记录?如计数是:是= 2 ,否= 1
这是我到目前为止所尝试的
$this->db->select('count(status));
//$this->db->select('count(where status == 'yes')); // not working
$query = $this->db->get();
答案 0 :(得分:2)
使用CI的onload=
方法添加条件。更改您的查询,如下所示:
where
要获取所有状态计数,请使用group by子句
$this->db->select('count(status)');
$this->db->where('status','yes'); // apply where
$query = $this->db->get();
答案 1 :(得分:1)
试试这个
$this->db->select('*');
$this->db->from('yourtablename');
$this->db->where("(status = 'yes' AND id = '2' )", NULL, FALSE);
$query = $this->db->get();
return $query->num_rows();
答案 2 :(得分:1)
简单地分组然后计数。
$sql = "
SELECT
status,
count(*) as count
FROM
TABLENAME
GROUP BY
status
";
$query = $this->db->query($sql);
return $query->result();