Ich versuche, alle Ergebnisse aus einer Tabelle auszuwählen und mit einer anderen Tabelle zusammenführen, wenn Benutzer-IDs übereinstimmen.Laravel 4 Abfrage-Generator: LINKE VERBINDUNG ... UND ... Abfrage
Ich habe drei Tabellen: Läufe, Benutzer und eine run_user Pivot-Tabelle. Ich möchte alle Ergebnisse aus 'Läufe' und zusätzliche Spalten in der Pivot-Tabelle (die 'abgeschlossen', 'sticky', 'last_tested' und 'Schwierigkeit') auswählen, aber nur Daten aus run_user für den aktuellen Benutzer ziehen.
In rohen SQL habe ich es geschafft, dies über eine linke Seite mit einem UND-JOIN-Anweisung zu tun:
SELECT
runs.startpoint,
runs.startpostcode,
runs.endpoint,
runs.endpostcode,
run_user.completed,
run_user.sticky,
run_user.last_tested,
run_user.difficulty
FROM runs
LEFT JOIN run_user ON run_user.run_id=runs.id AND run_user.user_id = '2'
Irgendwelche Vorschläge, wie diese über den Query Builder zu tun? Ich kann die LINKE VERBINDUNG in Laravel 4 machen, aber ich kann nicht herausfinden, wie man das mit einer AND-Anweisung kombiniert.
Jede Hilfe wird geschätzt.
Danke!
Vielen Dank für Ihren Vorschlag. Leider habe ich das gleiche Problem mit der Where-Klausel. Dies funktioniert gut für Zeilen, in denen die run_user-Tabelle einen Datensatz für Läufe enthält, aber nicht alle Läufe. – user2324369
versuchen Sie es in 'Runs :: wo ('id', $ id) -> leftjoin ('run_user', 'run_user.run_id', '=', 'wird ausgeführt.id ') -> first(); ' –