sql >> Databáze >  >> RDS >> Mysql

PHP a MySQL nejlepší způsob, jak počítat zobrazení stránek pro dynamické stránky

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.



  1. Čtyři způsoby použití aplikace Microsoft Access

  2. Rozdělit hodnoty do více řádků

  3. Dlouhé celé číslo je transformováno, když je vloženo do kratšího sloupce, není zkráceno. Proč? jaký je vzorec?

  4. Jak povolit ENUM v Symfony 2 / Doctrine