2009-06-18 82 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將有你需要的東西!