Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 14.07.2009 Skąd: Rzeszów Ostrzeżenie: (0%)
|
Witam.
Czy ktoś wie lub posiada przykład działającej poprawnie funkcji przesuwania liści i węzłów w strukturze Nested Sets wewnątrz jednej gałęzi (rodzica)? Mam tabelę posiadającą kolumny `id`, `nazwa`, `lft`, `rgt`, `parent`. W jaki sposób zamienić miejscami dwa węzły lub liście wewnątrz tego samego rodzica (uwzględniając, że te węzły mogą posiadać również swoje dzieci itd.)? Z góry dziękuję serdecznie za odpowiedzi (IMG:style_emoticons/default/smile.gif) |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%)
|
Cytat Lub podzapytania. I nie odwracaj kota ogonem. Pisałeś, że to wyjątkowo trudne a ja twierdzę, że bułka z masłem. To podzapytanie to o ile się nie mylę (już trochę późno jest) jeszcze gorszy pomysł. I nigdzie nie napisałem, że jest to "wyjątkowo trudne", tylko "dosyć skomplikowane" bo jest*. Programiście utrudnia prace, bo każdorazowo musi zaśmiecać treść zapytania fragmentem do wyliczenia tej wartości, a silnik bazy danych wręcz katowany jest jeżeli mamy do czynienia z jakimś sensowniejszym zestawem danych.Cytat Jeszcze bardziej bezsensowne jest przeliczanie kolumny ilekroć chcemy przenieść element lub gałąź. Uznam, że po prostu z rozpędu już to palnąłeś. Bo właśnie napisałeś, że jednokrotne wyliczenie wartości i zapisanie jej jest bardziej bezsensowne niż każdorazowe wyliczenie tej samej wartości. Może jeszcze miałoby to sens w przypadku gdyby owa wyliczana wartość zajmowała masę miejsca, ale tutaj mowa jest o zwykłej liczbie całkowitej.Cytat Nie musisz lubić nested-set, bo jak wszystko mają swoje wady. Fajnie jednak by było, gdybyś nie wprowadzał w związku z tym ludzi w błąd pisząc, że to koszmarnie trudne. A gdzie napisałem, że nie lubię? Zresztą jak można nie lubić "algorytmu"? I nie wciskaj mi słów których nigdy nie napisałem (patrz: koszmarnie trudne) bo takie coś jest po prostu bezczelne.PS. Nie wiem czy zauważyłeś, ale kłócisz się (bo tak to zaczynam odbierać) o straszną pierdołę. O to, że zasugerowałem przechowywanie wyniku jednej operacji na stałe w bazie. * Dobra, może "skomplikowane" to złe słowo tutaj - ale "niewygodne" pasuje idealnie. Ten post edytował Crozin 11.04.2011, 23:34:08 |
|
|
|
grz16w Nested Sets - przenoszenie węzłów i liści góra/dół 10.04.2011, 22:42:12
Crozin Zanim zapomnę: o ile dobrze pamiętam phpBB3 albo j... 10.04.2011, 23:13:45
jang http://www.phpriot.com/articles/nested-trees-2/7
... 11.04.2011, 08:18:26
JoShiMa Cytat(grz16w @ 10.04.2011, 22:42:12 )... 11.04.2011, 10:24:51 
grz16w Cytat(JoShiMa @ 11.04.2011, 11:24:51 ... 11.04.2011, 15:13:30 
JoShiMa Cytat(grz16w @ 11.04.2011, 15:13:30 )... 11.04.2011, 21:38:11 
grz16w Cytat(JoShiMa @ 11.04.2011, 22:38:11 ... 11.04.2011, 22:02:31 
JoShiMa Cytat(grz16w @ 11.04.2011, 22:02:31 )... 11.04.2011, 22:37:33
Crozin Można ale jest to dosyć skomplikowane, a trzymanie... 11.04.2011, 22:08:23
Crozin @JoShiMa: Szkoda tylko, że nie dodałeś że dynamicz... 11.04.2011, 22:59:11 
JoShiMa Cytat(Crozin @ 11.04.2011, 22:59:11 )... 11.04.2011, 23:08:01 
JoShiMa Cytat(Crozin @ 11.04.2011, 23:32:32 )... 11.04.2011, 23:38:53
wiewiorek Joshima napisal: "@Crozin naucz się wreszcie ... 12.04.2011, 07:55:05 
JoShiMa Cytat(wiewiorek @ 12.04.2011, 07:55:0... 12.04.2011, 09:24:17
grz16w Więc tak.. Użyłem metody:
CytatSELECT node.name, ... 12.04.2011, 10:39:37
JoShiMa A to zapytanie wywołujesz w bazie czy w skrypcie P... 12.04.2011, 11:03:46
grz16w Wykonuję to zapytanie przez PHP. Gdy wykonuję w pa... 12.04.2011, 11:27:00 
JoShiMa Cytat(grz16w @ 12.04.2011, 11:27:00 )... 12.04.2011, 21:52:17
Crozin CytatCytatTo podzapytanie to o ile się nie mylę (j... 12.04.2011, 16:53:32
Crozin Nic nie oszukuję. Przecież przy przenoszeniu i tak... 12.04.2011, 21:55:07 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 17:52 |