![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 195 Pomógł: 0 Dołączył: 13.04.2004 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Chciałbym, żeby moja baza selekcjonowała rekordy na drzewko kategorii. Struktura bazy wygląda tak: Kod +--+-----+-----+---------------+ Gdzie pole owner oznacza id rekordu nadrzędnego, lub NULL w przypadku jego braku (wtedy rekord jest korzeniem (root) ), allow i name to dane do pobrania. Ilość zagnieżdżeń jest nieograniczona, zatem zapytanie powinno, o ile to możliwe, korzystać z rekurencji. Czy da się coś takiego osiągnąć w MySQL 5?|id|owner|allow| name | +--+-----+-----+---------------+ |1 |NULL | 0 |Rękodzielnictwo| |2 | 1 | 1 | Biżuteria | |3 | 2 | 1 | Drobna | |4 | 1 | 0 | Ze skóry | |5 | 4 | 1 | Torby/Paski | |6 | 4 | 1 | Kurtki | |7 |NULL | 1 | Półprodukty | +--+-----+-----+---------------+ Spodziewany rezultat: Kod +> Rękodzielnictwo - bez allow w formie tablicy wielowymiarowej w PHP
|+> Biżuteria - z allow |-> Drobna - z allow |+> Ze skóry - bez allow |-> Torby/Paski - z allow |-> Kurtki - z allow -> Półprodukty - z allow -------------------- Językiem którym najlepiej operują wszyscy programiści są przekleństwa.
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 224 Pomógł: 40 Dołączył: 6.07.2004 Skąd: Wuppertal Ostrzeżenie: (0%) ![]() ![]() |
zapytania rekurencyjne w pętli - mało optymalne ale do prostych zastosowań najłatwiejsze do implementacji
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 195 Pomógł: 0 Dołączył: 13.04.2004 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
To MySQL ma jakąś pętlę?
Czy może chodzi o pętlę w php? Tych kategorii nie będzie dużo, więc tak się da zrobić ![]() ![]() -------------------- Językiem którym najlepiej operują wszyscy programiści są przekleństwa.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 045 Pomógł: 5 Dołączył: 8.11.2004 Skąd: trójmiasto Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 05:33 |