użycie LEFT JOIN z SELECT, left join z subzapytaniem |
użycie LEFT JOIN z SELECT, left join z subzapytaniem |
17.01.2021, 12:41:03
Post
#1
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 0 Dołączył: 21.12.2007 Skąd: Stalowa Wola Ostrzeżenie: (0%) |
Witam, czy jest możliwe wyciągnięcie jednym zapytaniem dwóch danych z tej samej tabeli? W jednej tabeli mam pola kto zmodyfikował i kto dodał pozycję, które często różnią się od siebie - pola te, to id użytkowników z drugiej tabeli. I teraz próbuję wyświetlić nazwy tych użytkowników z tabeli, mając id tych użytkowników w drugiej tabeli.
i to mi działa, ale pokazuje tylko nazwę użytkownika na podstawie r.login_id, a potrzebuję jeszcze pobrać z bazy użytkowników nazwę użytkownika na podstawie r.modyfik_id. Próbowałem połączyć LEFT JOIN z SELECT, ale nie umiem. Próbuję tak:
Można to zrobić jednym zapytaniem, czy muszę wyciągać tą wartość w drugim? EDIT: nie wiem, czy to dobre rozwiązanie, ale kilka postów poniżej znalazłem ten Temat: Potrojny LEFT JOIN w 3 tabelach post, w którym Nospor zasugerował użycie kolejnego LEFT JOIN, spróbowałem to zrobić u siebie i zadziałało, drugi LEFT JOIN pokazuje mi nazwę osoby modyfikującej, tylko czy to poprawne rozwiązanie?
Ten post edytował Jdwind 17.01.2021, 12:52:16 |
|
|
17.01.2021, 13:01:36
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Prawdopodobnie dobrze, ale pokaż ostateczne zapytanie.
LEFT JOIN nie musisz używać, jeśli masz pewność, że w tabeli rejestr są użytkownicy, którzy są również w tabeli login, albo nie interesują Cię wpisy w rejestr, dla których brak odpowiadających im użytkowników. -------------------- |
|
|
17.01.2021, 13:25:03
Post
#3
|
|
Grupa: Zarejestrowani Postów: 38 Pomógł: 0 Dołączył: 21.12.2007 Skąd: Stalowa Wola Ostrzeżenie: (0%) |
Całość wygląda teraz tak:
Tylko teraz mam pytanie - jak próbuję wyciągnąć dane w php w ten sposób:
i chcę użyć $row["ll.login_name"] to mam undefined index. Zapytanie w phpmyadmin zwraca poprawne dane. EDIT: przepraszam, chwilowe zaćmienie - użyłem aliasów i jest w porządku. Tylko moje pytanie o poprawność użycia drugiego LEFT JOIN - czy to jest ok (wiem, że działa) czy może lepiej próbować tego SELECTa w pierwszym LEFT JOIN? Ten post edytował Jdwind 17.01.2021, 13:29:57 |
|
|
17.01.2021, 13:29:09
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Sprawdź jak wygląda cała tablica $row, będziesz wiedział dlaczego.
A potem użyj aliasów w zapytaniu. -------------------- |
|
|
Wersja Lo-Fi | Aktualny czas: 19.04.2024 - 03:46 |