2017-05-30 14 views
-3

Bevor Sie mich zu etwas anderem schicken, da gibt es schon so etwas wie beantwortet. Ich verstehe die dort gegebenen Beispiele nicht ganz.Inner Join mehr als 2 Tabellen (5 Tabellen)

function joinBestelling(){ 

$sql =("SELECT 
     artikel.artikelCode, 
     factuurregel.aantal 
    FROM artikel 
    INNER JOIN factuurregel 
    ON artikel.artikelCode = factuurregel.artikelCode"); 

$stmt = $this->conn->prepare($sql); 

$stmt->execute(); 

$records = $stmt->fetchAll(); 

return $records; 
} 

so ich habe zwei Tabellen jetzt artikel und factuurregel Wie füge ich wie 3 weitere Tabellen mit den Daten in der Join?

+0

Durch Hinzufügen zusätzlicher '' 'join''' und' '' on''' Klauseln nach der '' 'On'''-Klausel haben Sie. Eine für jede Tabelle, der Sie beitreten möchten. –

+0

An welche Tabellen möchten Sie teilnehmen? Und mit einer Zeile (obligatorisch) oder mehr Zeilen? –

+0

Ich sollte auch über die verschiedenen Joinmethoden wie INNER lesen JOIN und LEFT JOIN –

Antwort

0

verbinden Sie einfach die outher Tabellen wie die erste:

SELECT 
     artikel.artikelCode, 
     factuurregel.aantal 
    FROM artikel 
    INNER JOIN factuurregel 
    ON artikel.artikelCode = factuurregel.artikelCode 
    INNER JOIN table3 on ..... 
    INNER JOIN table4 on ..... 

Hoffentlich war Ihre Frage

+0

jetzt Google erhalte ich ein leeres Array zurück mit den folgenden: Funktion joinBestelling() { $ sql = („SELECT artikel.artikelCode, factuurregel.aantal FROM artikel INNER JOIN factuurregel artikel.artikelCode ON = factuurregel.artikelCode INNER JOIN klant ON klant.Voorletter INNER JOIN medewerker medewerker.voorLetters ON "); $ stmt = $ this-> conn-> vorbereiten ($ sql); $ stmt-> execute(); $ records = $ stmt-> fetchAll(); return $ records; } –

+0

@NadalRahman Ich kenne Ihre Daten nicht, weil Sie es nicht gezeigt haben. Vielleicht verwenden Sie für einige Tabellen einen linken Join, wenn es möglich ist, dass Sie keinen Eintrag in einer der Tabellen haben – Jens

-3
function joinBestelling(){ 
    $sql =("SELECT factuurregel.factuurNummer, factuurregel.artikelCode, factuurregel.aantal, factuurregel.prijs, factuur.factuurNummer, factuur.factuurDatum, factuur.klantCode, klant.klantCode, klant.voorLetter, klant.achterNaam, artikel.artikelCode, artikel.artikel, artikel.prijs FROM factuurregel JOIN factuur ON factuurregel.factuurNummer = factuur.factuurNummer JOIN klant ON factuur.klantCode = klant.klantCode JOIN artikel ON factuurregel.artikelCode = artikel.artikelCode"); 
    $stmt = $this->conn->prepare($sql); 
    $stmt->execute(); 
    $records = $stmt->fetchAll(); 
    return $records; 
}