2009-06-18 50 views
1

使用CodeIgniter的Active Record类和MySQL,我有一个user_id和各种其他字段的帖子表,并且我想要统计每个用户做了多少帖子。我可以得到行数user_id = $whatever并计算结果数量,但是我必须循环遍历每个user_id,并对每个查询反复使用count_all_results()查询。计算每个组的行数

必须有更好的方法!如果每个领域都有一个1的字段,那么我可以在该字段上加上select_sum并计算一下。但是,这似乎愚蠢。

非常感谢提前!

回答

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将有你需要的东西!