Mam tabelę z dwoma polami, które odwołują się do identyfikatora innej tabeli. Muszę pobrać nazwę z drugiej tabeli dla obu pól.Mysql wiele lewych złączeń na tym samym stole
np.
Table1 worker1 = 2 (2 is key to other table) worker2 = 4Table2 ID NAME 1 Bill 2 Fred 3 John 4 Paul
Potrzebuję uzyskać $ worker1name = Fred i $ worker2name = Paul.
Więc będę mówiąc coś takiego:
SELECT xxx, NAME?, NAME? FROM Table1
LEFT JOIN Table2 AS p1 ON Table1.worker1 = Table2.ID
LEFT JOIN Table2 AS p2 ON Table1.worker2 = Table2.ID
WHERE ...
$table = mysql_query(...);
$rec = mysql_fetch_assoc($table);
$worker1name = $rec['???'];
$worker2name = $rec['???'];
Co mogę wstawić w tych ostatnich dwóch sprawozdań, aby uzyskać dwie nazwy. A dokładniej, co muszę dodać do SELECT, aby określić, co chcę nazwać dwiema różnymi wersjami pola NAME z tabeli 2?
otrzymuję komunikat o błędzie: Nie można uruchomić kwerendę: Nieznana kolumna „table2.id” w „o klauzuli” (odpowiednik nazwy w moim tabela) – user2605793
zmodyfikował zapytanie. (musisz użyć pseudonimu, jest tam.) –
Pomocna! dzięki :) – InspiredCoder