Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MySQL] Budowanie drzewa
rolnix
post 11.11.2007, 22:13:26
Post #1





Grupa: Zarejestrowani
Postów: 115
Pomógł: 0
Dołączył: 16.04.2005
Skąd: Białowieża

Ostrzeżenie: (0%)
-----


Witam.

Zaszła potrzeba utworzenia tablicy drzewa wielopoziomowego za pomocą jak najmniejszej liczby zapytań. Przykładowa tabela:

Kod
id     parent_id    title  
1      0            Artykuły
2      1            Na temat 1
3      1            Na temat 2
4      2            Na podtemat 1
5      2            Na podtemat 2


Celem jest utworzenie tablicy o strukturze:

Kod
Array
(
    [0] => Array
        (
        ["name"] =>  "Artykuły"
        ["items"] => Array
                   (
                         [0] => Array
                         (
                         ["name"] =>  "Na temat 1"
                         ["items"] =>  Array
                                       (
                                             [0] => Array
                                                    (
                                                    ["name"] =>  "Na podtemat 1"
                                                    )
                                             [1] => Array
                                                    (
                                                    ["name"] =>  "Na podtemat 2"
                                                    )
                                       )
                         )
                         [1] => Array
                         (
                         ["name"] =>  "Na temat 2"
                         )
                   )
        )

)


Google podaje mi tylko jakieś wielkie klasy, które operują tylko na memberach obiektu, ew. poprzez rekurencję wykonują więcej zapytań SQL.

Pytanie:

Czy ktoś ma pomysł, jak zbudować takie drzewo z pomocą jednego tylko zapytania, tzn SELECT * FROM categories?


--------------------
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 11:18