Autor: Tomasz Jędrzejewski
Data publikacji: 16.01.2007, 14:49
Do zliczania iloÅ›ci rekordów sÅ‚uży w jÄ™zyku SQL funkcja COUNT(). Używana ciÄ…gle, w szczególnoÅ›ci w połączeniu z LEFT JOIN na dużych bazach może prowadzić do katastrofalnego spadku wydajnoÅ›ci. Alternatywny sposób polega na przechowywaniu aktualnej liczby elementów w samych rekordach. PrzykÅ‚adowo, majÄ…c tabele newsy oraz komentarze, tworzymy w pierwszej z nich pole il_komentarzy, do którego na poczÄ…tku wprowadzamy 0. Kiedy dodajemy komentarz, zwiÄ™kszamy wartość tego pola dla odpowiedniego rekordu, a gdy kasujemy - zmniejszamy. Wymaga to nieco wiÄ™kszej iloÅ›ci zabawy przy edycji oraz użycia blokowania tabel, ale dziÄ™ki temu nasza baza wytrzyma niesamowicie dużo, ponieważ wszystko pobierać bÄ™dzie proÅ›ciutkie zapytanie:
SELECT id, tytul, DATA, tresc, il_komentarzy FROM newsy ORDER BY DATA DESC
Waszym zdaniem:
Nikt jeszcze nie dodał swojego komentarza. Możesz być pierwszy!