Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie wähle ich in CodeIgniter aus einer 1:n-Beziehung aus?

Der Fremdschlüssel stellt einen Link zu einem anderen Datensatz in derselben oder einer anderen Tabelle (normalerweise letztere) her. Ein Join verwendet gemeinsame Daten in zwei Tabellen (manchmal derselben Tabelle), um eine Verbindung zwischen ihnen herzustellen.

Wenn Sie zwei Tabellen haben, die Sie verbinden möchten, und der einzige gemeinsame Faktor zwischen diesen beiden Tabellen in einer dritten Tabelle liegt (diejenige mit allen Fremdschlüsseln), müssen Sie 2 Joins durchführen.

Beispiel

SELECT *.table1, *.table2 FROM table1
LEFT JOIN foreign_key_table ON foreign_key_table.id1 = table1.id
LEFT JOIN table2 ON foreign_key_table.id2 = table2.id
WHERE.....

In Cosignter:

$this->db->select('*.table1, *.table2');
$this->db->from('table1');
$this->db->join('foreign_key_table', 'foreign_key_table.id1 = table1.id');
$this->db->join('table2', 'foreign_key_table.id2 = table2.id');
$this->db->where('...');

Alle Informationen, die Sie benötigen, finden Sie hier - http://codeigniter.com/user_guide/database /active_record.html

Hoffe das hilft.