Obvykle struktura tabulky vypadá takto:
stránky tabulky:
id | name | ...
==========================
1 Some Page
2 Some Other Page
tabulka pages_views:
page_id | views
================
1 1234
2 80
kde pages_views má jedinečný index na page_id
Příkaz MySQL pro zvýšení zobrazení pak vypadá následovně:
INSERT INTO `pages_views` SET views=1 WHERE page_id=?
ON DUPLICATE KEY UPDATE views=views+1 ;
Od pages_views.page_id
je jedinečný, řádek pro stránku se vytvoří, pokud neexistuje; pokud existuje (to je klauzule "duplikovaný klíč"), počítadlo se zvýší.
Vybral jsem zde dvě samostatné tabulky, protože stránky CMS se obvykle neaktualizují příliš často (a proto se jejich zatížení většinou čte), zatímco zobrazení stránek se čtou a aktualizují při každém zobrazení stránky.