![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 13.10.2010 Ostrzeżenie: (0%) ![]() ![]() |
Hej mam takie pytanie
mam tabele z pracownikami firmy, w niej 6 pracownikow i 2 kierownikow. Chcialbym ich wyswietlic tak, ze jako pierwszy jest kierownik a pod nim jego trzech podwladnych. W tabeli znajduje sie kolumna w ktorej oznaczeni sa kierownicy cyfra 1. natomiast kazdy z pracownikow ma przypisana kolumne z numerem swojego kierownika W wyniku najlepiej bylo byc cos w takim rodzaju otrzymac Nazwisko Kieronik Kowalski Nowak Kowalski Klos Kowalski Gola Kowalski itd I pod nimi 2 kierownik i trzech podwladnych pod nim. Czy istaniej do tego jakas funkcja? Dodam, ze to jest pod DB2, czyli struktura drzewa z Oracla chyba nie przejdzie |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 116 Dołączył: 3.06.2012 Skąd: Lędziny Ostrzeżenie: (0%) ![]() ![]() |
Zrobiłem sobie u siebie w bazie taką samą tabelę i powiem Ci, że wyciągnięcie tego przy obecnej strukturze jest mało realne, brak punktu zaczepienia (a raczej brak wartości), aby to normalnie posegregować. Problem rozwiązuje się wtedy, gdy NULL przy kierownikach zastąpimy ich ID. Wtedy takie zapytanie:
Daje nam dokładnie to co chcesz osiągnąć. Jak zrobić, aby kierownik mający obecnie wpisane NULL w polu 'his_kier' mial tam swoje id? Wykonujemy takie zapytanie:
Zrób sobie kopie tabeli i sprawdź to co podałem. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.10.2025 - 19:21 |