Ce que vous envisagez pourrait être fait de plusieurs façons.
-
Vous pouvez configurer un déclencheur dans votre base de données pour recalculer les valeurs chaque fois qu'un nouvel enregistrement est mis à jour. Vous pouvez stocker le code nécessaire pour mettre à jour les valeurs dans un sproc si nécessaire.
-
Vous pouvez écrire un script PHP et l'exécuter régulièrement via cron.
#1 ralentira les insertions dans votre base de données mais s'assurera que vos données sont toujours à jour. #2 peut verrouiller les tables pendant qu'il met à jour les nouvelles valeurs, et vos données ne seront exactes que jusqu'à la prochaine mise à jour. # 2 est beaucoup plus facile à sauvegarder, car le script peut facilement être stocké dans votre système de gestion des versions, alors que vous auriez besoin de stocker les scripts de création de déclencheur et de sproc dans la sauvegarde que vous feriez.
Évidemment, vous devrez peser vos besoins avant de choisir une méthode.