2009-06-18 7 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はあなたが必要なものを持っています!

関連する問題