Ich bin neu in PHP/MySQL und super-neu zu CodeIgniter .. Ich habe Informationen in vielen MySQL-Tabellen. Ich möchte es mit JOIN abrufen, wo die Tabellenprimärschlüssel gleich $ Variable sind ... Wie kann ich es tun und alle Felder ohne das Primärschlüsselfeld bekommen ???CodeIgniter/PHP/MySQL: Abrufen von Daten mit JOIN
Was ich tue, das ist jetzt (nur zwei Tische hier verbunden):
function getAll($id) {
$this->db->select('*');
$this->db->from('movies');
$this->db->join('posters', 'movies.id= posters.id');
// WHERE id = $id ... goes here somehow...
$q = $this->db->get();
if ($q->num_rows() == 1) {
$row = $q->row();
$data = array(
'id' => $row->id,
'title' => $row->title,
'year' => $row->year,
'runtime' => $row->runtime,
'plotoutline' => $row->plotoutline,
'poster_url' => $row->poster_url
);
}
$q->free_result();
return $data;
id (PK), Titel, Jahr, Laufzeit und plotoutline sind Spalten aus der ersten Tabelle und poster_url ist ein Feld, aus der zweiten Tabelle. Die zweite Tabelle enthält auch eine ID (PK) -Spalte, die ich nicht abrufen möchte, weil ich sie bereits habe.
Auf diese Weise ich zwischen den beiden Tabellen beitreten und alle Ergebnisse richtig machen? Wie kann ich die ID aus der Zeile angeben, die ich die Daten erhalten möchte? Etwas wie 'WHERE movies.id = $ id' .. – Jonathan
Ich habe einige weitere Informationen oben hinzugefügt. :) – GloryFish
Gibt es einen Leistungsunterschied zwischen dem 'Active Record' und dem regularen SQL-Code ??? – Jonathan