使用CodeIgniter的Active Record类和MySQL,我有一个帖子表user_id
和其他各种字段,我想计算每个用户发了多少帖子。我可以获得user_id = $whatever
行并计算结果数量的行,但我必须循环遍历每个user_id
并反复使用count_all_results()
查询。
一定有更好的方法!如果每个字段中都有一个1
的字段,我可以select_sum
向上该字段并获取计数。但这似乎很愚蠢。
非常感谢提前!
答案 0 :(得分:1)
使用有效记录应为:
$this->db->select('field1, ... ,fieldn, count(1) as number_elements_of_row');
$this->db->group_by(array('field_group_1', ... ,'field_group_n'));
$result = $this->db->get('mytable');
所以$result
会得到你需要的东西!