2016-04-13 8 views
0

Ich versuche, Details aus Tabelle1 und Tabelle2 auf Basis von Tabelle3 ID-Array zu erhalten. Die IDs Tabelle 3 und Tabelle1 sind in Tabelle2 verfügbar.Ich muss mit Code-Zünder-Abfrage beheben

// $ ids ist ein Array von IDs wie: Array ([ids] => 10,11)

function get_detail($ids) { 

    $this->db->select('*'); 
    $this->db->from('table1'); 
    $this->db->join('table2', 'table1.aID = table2.aID'); 
    $this->db->join('table3', 'table2.bID = table3.bID','left'); 
    $this->db->where('table3.bID', $ids); 
    $query = $this->db->get();  

} 

Antwort

0

Wenn Sie mehrere Werte haben, sollten Sie IN

verwenden

ersetzen
$this->db->where(); 

Mit

$this->db->where_in(); 

Beide dauert (col, Wert);

Hinweis: // $ ids = Array (10,11);

0

Hallo Sie verwenden where_in wie diese

function get_detail($ids) { 

    $this->db->select('*'); 
    $this->db->from('table1'); 
    $this->db->join('table2', 'table1.aID = table2.aID'); 
    $this->db->join('table3', 'table2.bID = table3.bID','left'); 
    $this->db->where_in('table3.bID', $ids); 
    $query = $this->db->get();  

} 

Hinweis: Pass $ ids in Array-Format

$ ids = Array (10,11);

+0

verwenden Wie ich foreach() verwenden für Array wie Array ([sectionIDs] => 1,2,3,4) oder wie kann ich Array brechen ([sectionIDs] => 1,2,3,4) in 'Array ([0] => 1, [1] => 2, [2] => 3, [3] => 4)' – Asif

0

können Sie ein Array

$array = array('name !=' => $name, 'id <' => $id, 'date >' => $date); 

$this->db->where($array); 
+0

Wie kann Ich verwende foreach() für Array wie Array ([sectionIDs] => 1,2,3,4) oder wie kann ich Array ([sectionIDs = 1, 2, 3, 4) in 'Array zu brechen ([0] => 1, [1] => 2, [2] => 3, [3] => 4) ' – Asif