cycofiasz
28.12.2008, 17:48:46
Witajcie, jest taka sytuacja:
skrypt php oparty o mysql. W mysql są 2 tabele: artykuły i komentarze.
I teraz są 2 opcje by otrzymać ilość komentarzy do każdego artykułu (news.php):
-w tabeli artykuły dodać jedno pole: `ilosc_komentarzy` i zwiększać wartość pola przy każdym dodainu komentarza
-zliczać (count) ilość rekordów z tabeli komentarze gdzie id_artykułu = id artykułu
Co wydajniejsze i co byście wybrali? Jak to jest zorganizowane u Was?
tomsi
28.12.2008, 18:25:05
memory
28.12.2008, 19:43:35
wydajniejszy zapewne 1 sposob. Ja uzywam drugi sposob albo przedstawiony przez tomsi
piotrooo89
28.12.2008, 21:05:20
po to są takie funkcje aby z nich korzystać... terasz pytanie czy wykonasz to po stronie mysql'a za pomocą COUNT albo po stronie php za pomocą funkcji którą podał Ci ~tomsi
Metoda tomsi zabiła by każdą bardziej bardziej rozbudowaną i obleganą aplikację przecież pobiera z bazy wszystkie komentarze.
Zdecydowanie najszybciej i najwydajniej będzie utworzyć oddzielne pole dla liczby komentarzy ewentualnie mniej wydajne użyć funkcji COUNT do zliczenia komentarzy.
Jeżeli komentarzy nie będzie dużo to nie będzie dużej różnicy ale jeżeli komentarzy będzie od groma to zdecydowanie pierwsza opcja będzie dużo szybsza.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.