![]() |
![]() |
![]()
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: 47 Pomógł: 0 Dołączył: 22.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
Nie, nie będzie 100 użytkowników :-), w jednym wierszu tabeli "zadania" jest zawsze dokładnie 5 użytkowników. Chodzi o to że każde zadanie ma dokładnie 5 etapów, a każdy etap może wykonać inny użytkownik. I zamiast do tabeli "zadania" dodawać pełne nazwy użytkowników dodaje tylko ich numery id i potem pobierając rekord z tabeli "zadania" chcę tym numerom ID użytkowników przyporządkować ich odpowiednie nazwy z tabeli "uzytkownicy".
To zapytanie co jest powyżej jak najbardziej działa i w zasadzie może tak zostać jednak moje pytanie dotyczy tego czy to jest jedyne rozwiązanie? i czy nie da sie tego zrobić np. prościej?. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 05:26 |