sql >> Databasteknik >  >> RDS >> Mysql

PHP &MySQL bästa sättet att räkna sidvisningar för dynamiska sidor

Vanligtvis ser tabellstrukturen ut så här:

tabellsidor:

id | name            | ... 
==========================
1    Some Page
2    Some Other Page

tabell pages_views:

page_id | views
================
1         1234
2         80

där pages_views har ett unikt index på page_id

MySQL-satsen för att öka vyerna ser sedan ut som följer:

INSERT INTO `pages_views` SET views=1 WHERE page_id=?
    ON DUPLICATE KEY UPDATE views=views+1 ;

Sedan pages_views.page_id är unik, skapas raden för sidan om den inte finns; om den finns (det är klausulen "duplicera nyckel"), kommer räknaren att ökas.

Jag valde två separata tabeller här, eftersom CMS-sidor vanligtvis inte uppdateras för ofta (och därför är deras belastning mestadels läser), medan sidvisningar läses och uppdateras, ja, med varje sidvisning.



  1. Ansluter Oracle till SQL Server från Windows

  2. hur lägger man till superprivilegier till mysql-databasen?

  3. Slutför SQL. Berättelser om framgång och misslyckande

  4. Hur man återställer en SQL Server-databas på en Mac med Azure Data Studio