2 つのデータベース テーブルがあります。次のクエリは、member_id と type がクエリに一致する行を選択しています。次に、2 つのテーブルを結合して、2 番目のテーブルに存在しないか、存在するがポートフォリオ ID として NULL を持たないエントリのみを取得します。
これはうまく機能しています。
$this->EE->db->select('submissions.entry_id');
$this->EE->db->from('submissions');
$this->EE->db->join('judging', 'submissions.entry_id = judging.entry_id', 'left');
$this->EE->db->where('submissions.member_group', $member_group);
$this->EE->db->where('submissions.type_id', '1');
$this->EE->db->where('judging.entry_id', NULL);
$this->EE->db->or_where('judging.portfolio_id IS NOT NULL');
$query = $this->EE->db->get();
クエリの最後の部分で、完全に困惑しました。
最初のテーブルでは、「portfolio_name」という名前の列に 1 から 7 までの数値を指定できます。
この列に同じ番号を持つ 3 つの行を取得する必要があります。一致する行が 2 つしかない場合は、それらを無視する必要があります。4 つある場合も同様です。
正確な数をターゲットにせずに、これをどのように達成できますか?
ありがとうございました