0

ボックスで開かれた各タイトルのログを含むテーブルがデータベースにあります。ボックス 12 とボックス 14 があるとします。これらのボックスにはそれぞれ異なるタイトルが付いています。だれかがボックスを開き、特定のボックスのタイトルを開くと、エントリがデータベースに挿入されます。あるボックスでタイトルが開かれた回数を取得したい。複数のボックスと複数のタイトルを選択するフォームがあります。フォームを送信した後、選択したボックスごとに、各タイトルがボックスで何回開かれたかを知りたいです。

私のSQLクエリは

 public function getTitlesOpenings($boxes, $titles){
    $query =   $this->db->select('box_id,title_id,COUNT(title_id) AS Titles_Openings')
            ->from('boxes_has_openings')
            ->where_in('box_id', $boxes)
            ->group_by('title_id')
            ->get();
    $data = $query->result_array();
    return $data;
} 

このクエリは、個々のボックスの title_ids の数が必要なすべてのボックスのタイトルの数を提供します。どうすればそれを達成できますか?

編集:

public function getTitlesOpenings($boxes, $titles){
    $query =   $this->db->select('box_id,title_id,COUNT(title_id) AS Titles_Openings')
            ->from('boxes_has_openings')
            ->where_in('box_id', $boxes)
            ->where_in('title_id', $titles) // I need something like for each box in boxes give the title_id
            ->group_by('title_id')
            ->get();
    $data = $query->result_array();
    return $data;
}

助言がありますか?

前もって感謝します

4

0 に答える 0