Próbuję wybrać wszystkie wyniki z jednej tabeli i scalić z inną tabelą, gdy dopasowanie ID użytkownika.Laravel 4 Konstruktor kwerend: LEWY DOŁĄCZ ... I ... zapytanie
Mam trzy tabele: przebiegi, użytkowników i tabelę przestawną run_user. Chcę wybrać wszystkie wyniki z "przebiegów" i dodatkowych kolumn w tabeli przestawnej (które są "ukończone", "przyklejone", "ostatnie testowane" i "trudność"), ale tylko pobrać dane z run_user dla bieżącego użytkownika.
surowca SQL udało mi się to zrobić za pomocą LEFT JOIN z I stwierdzeniem:
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'
Wszelkie sugestie jak to zrobić za pomocą Konstruktora kwerend? Mogę wykonać LEFT JOIN w Laravel 4, ale nie mogę wymyślić, jak połączyć to z instrukcją ORAZ.
Każda pomoc jest doceniana.
Dzięki!
Dzięki za sugestię. Niestety mam ten sam problem, używając klauzuli "where". Działa to dobrze dla wierszy, w których tabela run_user ma rekord dla uruchomień, ale nie otrzymuje wszystkich uruchomień. – user2324369
spróbuj zmienić na 'Runs :: where ('id', $ id) -> leftjoin ('run_user', 'run_user.run_id', '=', 'działa.id ') -> first(); ' –