Di solito la struttura della tabella si presenta così:
pagine della tabella:
id | name | ...
==========================
1 Some Page
2 Some Other Page
pagine_visualizzazioni della tabella:
page_id | views
================
1 1234
2 80
dove pages_views ha un indice univoco su page_id
L'istruzione MySQL per incrementare le visualizzazioni appare quindi come segue:
INSERT INTO `pages_views` SET views=1 WHERE page_id=?
ON DUPLICATE KEY UPDATE views=views+1 ;
Da pages_views.page_id
è unico, la riga per la pagina verrà creata se non esiste; se esiste (questa è la clausola "chiave duplicata"), il contatore verrà incrementato.
Ho scelto due tabelle separate qui, poiché le pagine CMS di solito non vengono aggiornate troppo spesso (e quindi il loro carico è principalmente di letture), mentre le visualizzazioni di pagina vengono lette e aggiornate, beh, ad ogni visualizzazione di pagina.