-1
我有兩個表,第一個表是'data_table'
,其中包含所有信息,如(名稱,地址..等)第二個表是'members_table'
它包含ID的第一個表是特定組的成員,如(組1,組2等)。現在我想要實現的是:我想從'data_table'
中獲得不是特定組查詢的成員的所有id's
。我試過是:Codeigniter模型使用聯合,結果兩個WHERE時結果爲假
$this->db->select();
$this->db->from('data_table');
$this->db->join('members_table', 'data_table.id = members_table.id', 'left');
$this->db->where('members_table.id', NULL);
$query = $this->db->get();
return $query->result_array();
這是我的查詢來獲取所有那些尚未members_table的名字,顯示的結果是布爾值TRUE,但如果添加了一行:
$this->db->where('members_table.group !=', 'group1');
並有我這樣的查詢:
$this->db->select();
$this->db->from('data_table');
$this->db->join('members_table', 'data_table.id = members_table.id', 'left');
$this->db->where('members_table.id', NULL);
$this->db->where('members_table.group !=', 'group1');
$query = $this->db->get();
return $query->result_array();
我得到0結果。例如,如果我想檢查誰還不是group1的成員,但可以已經是另一個組的成員,或者根本不是任何組的成員。如果我查詢:
$this->db->select();
$this->db->from('data_table');
$this->db->join('members_table', 'data_table.id = members_table.id', 'left');
$this->db->where('members_table.group !=', 'group1');
$query = $this->db->get();
return $query->result_array();
我只得到那些組的成員,除了1組,但與那些誰沒有任何組的成員都沒有ID的人的ID的結果。最好的辦法是什麼?任何SQL行答案都可以。由於