Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Rekurencyjne zapytania kontra przetwarzanie tablic, Droga ku Wydajności
Dabroz
post
Post #1





Grupa: Zarejestrowani
Postów: 286
Pomógł: 0
Dołączył: 1.11.2003
Skąd: Poland, Płock

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


Pisząc CMS'a, właśnie zacząłem się zastanawiać nad kwestią rekurencyjnych funkcji wysyłających zapytania SQL. Jeżeli CMS ma strukturę drzewkową, to oczywiście nie można pobrać całości jednym "prostym" zapytaniem tak jak w konstrukcjach płaskich.

I tutaj zaczynam się zastanawiać nad możliwą optymalizacją.

Czy lepszym rozwiązaniem jest pozostawienie w rekurencyjnej fukncji (bądź też pętli) zapytania SQL, czy wywołania bardziej "ogólnego" zapytania, a potem za pomocą tejże funkcji przetwarzanie wyniku aby zbudować drzewko?

Za rekurencyjnym SQL'em przemawia łatwość implementacji... ale chyba nic poza tym. Nie podoba mi się po prostu zmienna ilość zapytań w zależności od poziomu zagnieżdzenia elementu.

A co Wy na ten temat sądzicie?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
DeyV
post
Post #2





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Przy tak sformułowanym pytaniu duże znaczenie ma też przewidywane zastosowanie.
Dlaczego? Ponieważ jeśli przewidujesz dużą ilość kategorii, ale przy stosunkowo niewielkim poziomie zagnieżdżeń, to nie ma po co kombinować z bardzo skomplikowanymi zapytaniami, i złożoną strukturą bazy - ponieważ można pozwolić sobie na osobne zapytanie, dla każdego poziomu drzewka.
Wtedy wystarczy najprostrza struktura typu:
id, parent_id, name ...
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 26.12.2025 - 19:50