Wyświetlenie wierszy w kolejności w jakiej są ze sobą połączone

0

Witam, mam problem z kwerką do wyświetlenia wierszy w kolejności w jakiej są ze sobą połączone.

Mam tabelę w której każdy wiersz wskazuje na inny (łańcuch, pierwszy element wskazuje na NULL). Pole prev_id to FK do pola id.

Posortowane po id / nazwie mamy:

id nazwa prev_id
1 A NULL
2 B 4
3 C 2
4 D 1
5 E 3
6 F 5

Elementy wskazują jak poniżej:
A <- D <- B <- C <- E <- F

i taki też wynik chce uzyskać:

id nazwa prev_id
1 A NULL/0
4 D 1
2 B 4
3 C 2
5 E 3
6 F 5

Napisałem triggera który pilnuje integralności w tabeli - jeśli wiersz zostanie skasowany, zmieniona zostanie pozycja czy dodany nowy, prev_id zawsze będzie wskazywał poprawnie dla edytowanego jak i innych powiązanych z nim (na dany wiersz może wskazywać tylko jeden inny).

Myślałem że z triggerem będzie większy problem ale tu poszło gładko natomiast zaćmienie mam jakieś z kwerką by wyświetlić w kolejności jak na siebie wskazują wiersze :/

EDIT: już mam kwerkę która zwraca dokładnie to co chciałem :)

0

Zdecyduj się, albo chcesz sortować po id, albo po prev_id.

0

Rany, jeśli Wy programujecie tak jak czytacie to strach się bać co z tego wychodzi ... CZYTAJCIE ZE ZROZUMIENIEM albo nie udzielajcie się wcale.

0
yabolik napisał(a):

Rany, jeśli Wy programujecie tak jak czytacie to strach się bać co z tego wychodzi ... CZYTAJCIE ZE ZROZUMIENIEM albo nie udzielajcie się wcale.

Ale to nie my mamy problem z posortowaniem dwóch kolumn.

0
vpiotr napisał(a):

Ale to nie my mamy problem z posortowaniem dwóch kolumn.

Nie chce nikogo urazić ale:

  1. Po pierwsze nie mam problemu z posortowaniem dwóch kolumn, czytaj proszę ze zrozumieniem.

  2. Odnośnie Twojej wcześniejszej wypowiedzi:

Zdecyduj się, albo chcesz sortować po id, albo po prev_id.

Nie chce sortować ani po id ani po prev_id - nie wiem skąd to wziąłeś ale jest to dla mnie nowość, czy tu gdziekolwiek jest mowa o takim sortowaniu?

Problem dotyczył wyświetlenia wierszy w kolejności w jakiej są ze sobą połączone (i to nie ma nic wspólnego z sortowaniem).

  1. Problem rozwiązałem co zakomunikowałem na końcu posta.

Jeśli więc chcesz się wykazać proszę odpowiedz na pytanie które jest tutaj zadane, pokazując swoje rozwiązanie (być może lepsze od mojego) i to będzie podstawą do dalszej dyskusji.

0

To jest baza na mainframe? Sorry, trochę się odzwyczaiłem od baz gdzie ważna jest kolejność między rekordami.
Polecam dodać kolumnę typu "sort order", nie będzie trzeba zadawać pytań na forum.

1 użytkowników online, w tym zalogowanych: 0, gości: 1