Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 15.08.2007 Ostrzeżenie: (0%)
|
Witam,
zacznę od danych: Posiadam trzy tabele (w poniższym przykładzie table i ich struktura są fikcyjne, ale dobrze obrazują o co mi chodzi) news ID - identyfikator contents - treść aktualności photos photoID - identyfikator newsID - ID newsa, do którego odnosi się zdjęcie path - ścieżka do obrazu comments commentID - identyfikator newsID - ID newsa, do którego odnosi się komentarz author - autor komentarza contents - treść komentarza Jeden news może posiadać dowolną ilość zarówno zdjęć jak i komentarzy, czyli mamy podwójną relację jeden-do-wielu. Teraz chciałbym otrzymać taki wynik zapytania: Kod Array ( [0] => Array ( [ID] => 1 [contents] => ... [photos] => Array ( [0] => ... [1] => ... ) [comments] => Array ( [0] => Array ( [author] => ... [contents] => ... ) [1] => Array ( [author] => ... [contents] => ... ) [2] => Array ( [author] => ... [contents] => ... ) ) ) [1] => Array ( [ID] => 2 [contents] => ... [photos] => Array ( [0] => ... [1] => ... ) [comments] => Array ( [0] => Array ( [author] => ... [contents] => ... ) [1] => Array ( [author] => ... [contents] => ... ) [2] => Array ( [author] => ... [contents] => ... ) ) ) [2] => Array ( [ID] => 4 [contents] => ... [photos] => Array ( [0] => ... [1] => ... ) [comments] => Array ( [0] => Array ( [author] => ... [contents] => ... ) [1] => Array ( [author] => ... [contents] => ... ) [2] => Array ( [author] => ... [contents] => ... ) ) ) ) Ewentualnie zdjęcia również mogą być jako tablice (z jednym indeksem). Powyższą tablicę mógłbym otrzymać wykonując trzy zapytania i tworząc w pętli ostateczną formę:
Ale zastanawiam się (właściwie z czystej ciekawości) czy istnieje możliwość wykonania tego inaczej (czyt.: wydajniej). Chociaż te dane ($result) i tak będą cacheowane. (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Pozdrawiam Ten post edytował Adam Nowak 28.08.2008, 14:02:58 |
|
|
|
Adam Nowak Relacja jeden-do-wielu i pobieraie danych 28.08.2008, 14:00:36
JoShiMa Możesz w jednym zapytaniu uzyć dwukrotnie JOIN, al... 28.08.2008, 14:07:18
Adam Nowak Rozwiązanie z podwójnym JOINem będzie chyba nieco ... 28.08.2008, 14:16:18
JoShiMa Wydaje mi się, ze nie. 28.08.2008, 14:44:42 ![]() ![]() |
|
Aktualny czas: 24.12.2025 - 12:09 |