![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 47 Pomógł: 0 Dołączył: 22.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
Mam tabelę "uzytkownicy" z polami:
uzytkownik_id uzytkownik_nazwa oraz tabelę "zadania" z polami zadanie_id czynnosc_1 uzytkownik_id_1 czynnosc_2 uzytkownik_id_2 czynnosc_3 uzytkownik_id_3 czynnosc_4 uzytkownik_id_4 czynnosc_5 uzytkownik_id_5 Oczywiście poszczególne czynności mogą wykonywać ci sami bądź różni użytkownicy. I teraz chcę wyświetlić 1 wiersz z tabeli "zadania" przydzielając każdemu numerowi id użytkownika odpowiednią mu nazwę z tabeli "uzytkownicy". Czy jedynym i najprostszym rozwiązaniem tego problemu jest użycie aż (a może tylko?) 5 złączeń zewnętrznych LEFT JOIN ? Czyli:
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
piotrek24 ty nadal nie rozumiesz o co mi chodzi.
Do tego nie zakładaj nigdy, że obecne rozwiązanie jest najlepsze, a to robisz co do bazy, na pewno nie podamy lepszego rozwiązania jeśli nie znamy specyfiki problemu. W tym wypadku można było coś zrobić, ale straciło by się pewne informacje, więc na pewno takie rozwiązanie odpadnie. A to przez to, że baza jest źle napisana. Tak więc zostaje taki dziwoląg, który musi pięć razy złączać. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 09:39 |