Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 8.10.2004 Ostrzeżenie: (0%)
|
Witam,
Piszę ten temat bo ogarnęła mnie już całkowita niemoc. Próbuję zaimplementować jakiś sensowny algorytm drzewek do mojego CMFa. Nie chcę korzystać z Nested Sets (left, right), bo to kompletnie nie nadaje się do większych drzew. Znalazłem coś takiego: http://fungus.teststation.com/%7Ejon/treeh...reeHandling.htm Metoda bardzo fajna, ale utknąłem na jednej bardzo istotnej rzeczy - wyświetlaniu drzewa. Teoretycznie, zgodnie z tym co piszą w artykule, by pobrać drzewo (lub daną część drzewa) wystarczy użyć zapytania: Select Id from Path where AncestorId = 2 Przypuśćmy, że drzewo wygląda tak: Kod rośliny (1) / \ / \ / \ / \ owoce(2) warzywa(3) / / banan(4) (gdzie cyfry w nawiasach to numery ID elementów -- 'banan' został dodany później niż 'warzywa'). W tym wypadku, używając powyższego zapytania dostanę: Kod Rośliny Owoce Warzywa Banan Czy jest jakiś sensowny sposób, by pobrać odpowiednio posortowane drzewo korzystając z powyższego przykładu? A może znacie jakieś inne efektywne sposoby przechowywania drzew w bazie danych? Zależy mi przede wszystkim na efektywności i elastyczności. Nested Sets odpadają (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Przyjaciele php.pl Postów: 2 923 Pomógł: 9 Dołączył: 25.10.2004 Skąd: Rzeszów - studia / Warszawa - praca Ostrzeżenie: (0%)
|
Cytat to drzewka, ktorych galezie rpzedzielone sa dzielnikiem w tym wypadku kropka: warzywa/jadalne/kapusta/kiszona to np 18.57.36.2 Pomysl jaki implementuje M$, sprawdzony ale jak widac na tym forum nie jest dla baz polecany, poniewaz trudnosc w wyciaganiu danych. Kolejne typ drzewka juz wymieniony w tym watku to odwolanie do parenta, elastyczny sposob, przydaje sie jesli chesz szybko wyciagnac "dzieci", wszystko ladnie zindeksowane itd, trudnosc polega na tym ze problem jest ze sciezka, bo wszytko musimy robic rekurencyjne, no chyba ze laczymy 2 podane sposoby. |
|
|
|
chmolu drzewka sqlowe 1.09.2005, 20:50:33
sf co zas odpadaja? poprostu trzeba dodac n-level i ... 1.09.2005, 20:58:59
hwao Ja kozystam z "przerobionych" drzewek ip... 1.09.2005, 21:08:02
chmolu Cytatco zas odpadaja? winksmiley.jpg poprostu trze... 1.09.2005, 21:29:39
DeyV Najlepsze znane (przynajmniej mi) drzewko to drzew... 1.09.2005, 21:34:57
Ace DeyV, tez uzywam drzewka depeszy ;] z tym ze na my... 1.09.2005, 23:08:54
chmolu Przyjrzałem się dokładniej rozwiązaniu depesza. Z ... 2.09.2005, 19:05:40
aleksander ja potwierdzam, ze drzewka IP sa dosyc dobre. Nie ... 2.09.2005, 19:37:49
chmolu drzewka IP? co to oznacza? Immediate Parent? 2.09.2005, 19:42:45
aleksander to drzewka, ktorych galezie rpzedzielone sa dzieln... 2.09.2005, 19:44:23
Levabul Nigdy nie wiedziałem w czym tkwi problem z drzewka... 2.09.2005, 19:49:31
chmolu Cytatto drzewka, ktorych galezie rpzedzielone sa d... 2.09.2005, 20:02:35
aleksander ja u siebie jedna funkcja zrzucam drzewka do pliku... 2.09.2005, 20:03:37
SongoQ Cytatja u siebie jedna funkcja zrzucam drzewka do ... 2.09.2005, 20:06:22
hwao Ja mam to tak:
http://windforce.strefaphp.net/code... 3.09.2005, 09:20:30
aleksander Cytat(SongoQ @ 2005-09-02 21:06:22)Cytat ja u... 3.09.2005, 09:48:51
chmolu Sprawdźmy, czy dobrze rozumuję:
Kod
rośliny ... 3.09.2005, 09:52:47
hwao CytatCo do pobierania drzewa, to chyba będzie to c... 3.09.2005, 10:13:20
Ociu Ja się właśnie zastanawiałem którą z metod użyć i ... 3.09.2005, 11:18:33
chmolu CytatTo jest calego drzewka w gore:)
Jak to w górę... 3.09.2005, 11:33:46
aleksander no i o to hwao chodzi:) 3.09.2005, 11:48:26
kirkor0 A gdyby pobrał path i potem explodem podzielił pr... 3.09.2005, 12:15:24
hwao a ile to bedzie zapytan do bazy danych policz
Jak... 3.09.2005, 12:29:00
kirkor0 jedno zapytanie, które zwraca wszystkie wiersze
j... 3.09.2005, 12:33:20
sf ze sciezka zapisywana jako string jest taki proble... 3.09.2005, 12:52:43
kirkor0 Co do przenoszenia to mgłobybyć UPDATE z odpowiedn... 3.09.2005, 13:36:03
aleksander by the way, jezeli chcesz uzystac parenta w drzewk... 3.09.2005, 22:48:02
kirkor0 Cytat(aleksander @ 2005-09-03 23:48:02)kirkor... 5.09.2005, 19:51:29
Strzałek zainteresowałem się ostatnio trochę drzewkami i tr... 20.09.2005, 19:20:17
Bartech Osobiście uważam temat drzewka za trudny i zdradli... 23.09.2005, 15:49:32
chmolu A nie lepiej byłoby podzielić się tym ze wszystkim... 23.09.2005, 17:06:59
teles Moja wersja drzewka robi wszystko co trzeba, przes... 24.09.2005, 00:23:08
bela_666 teles pełno, wystarczy poszukać 24.09.2005, 00:27:52
Bora Cytat(hwao @ 2005-09-03 10:13:20)CytatCo do p... 29.09.2005, 01:13:33
SongoQ Cytatale wyświetlanie jest rekurencyjnami zapytani... 29.09.2005, 17:03:14
hawk Zamiast Nested Sets polecam Nested Intervals. Odpa... 29.09.2005, 20:43:37
bela_666 hawk, link jest w komentarzach do artykułu o drzew... 29.09.2005, 22:07:53
bigZbig Nested sets (zbiory zagnieżdżone) to ciekawy mecha... 11.01.2006, 14:58:57
Levabul Nie rozumiem trochę zastosowań drzewa. Jak w jedne... 17.01.2006, 20:58:50
bigZbig Cytat(Levabul @ 2006-01-17 21:58:50)Nie rozum... 17.01.2006, 21:42:47
AxZx moglbys ktos podrzucic jakas fajna klase do obslug... 24.01.2006, 22:51:24
bela_666 Ja publikowałem na forum jakiś szkic na forum. 24.01.2006, 23:21:55
NuLL Czy ktos probowal moze przesuwac wezly drzewka met... 20.04.2006, 15:43:01
scanner @NuLL: tak, ja - pokazywałem nawet działanie na fo... 20.04.2006, 18:43:19
ympans CytatNigdy nie wiedziałem w czym tkwi problem z dr... 8.10.2006, 17:26:20 ![]() ![]() |
|
Aktualny czas: 21.11.2025 - 11:30 |