Bdd table vote

Rechercher

Bdd table vote

Par saturn1  -  2 reponses  -  Le 28/11/2008 20:16  -  Editer  - 

Bonjour pour un projet de site de rap je dois afficher sur ma page d'accueil les tops.

ToP album, top artiste top membre..

Le top se fait en fonction des votes qu'ils ont recus DANS LA SEMAINE ACTUEL.

Donc par exemple pour le top album je dois faire une table vote_album qui contiendra les champs :

vote_id

vote_vote

vote_date

album_id

 

Mais le problème c'est que imaginons l'album fait un gros buzz il a 10 000 votes , cela fait déjà 10 000 entrés dans la bdd.

Alors que si je ne fais pas de table vote mais j'insère un champ vote dans la table album cela ne fera que 0 entrés mais je ne pourrais pas filtrer la date.

Comprend tu mon problème? comment je dois faire?

Merci

 

Réponses apportées à cette discussion

Par Emacs  -  Le 28/11/2008 21:32  -  Haut de page  - 

Si tu as besoin de garder un historique par date des votes d'un album, alors tu seras obligé d'avoir ta table et ses n milliers d'enregistrements. Si tu ne veux que la nombre de hits par semaine, tu fais un champs "hits" dans ta table "album" que tu incrémentes à chaque fois qu'il y'a un vote et que tu remets à zéro toutes les semaines avec un cron.

L'idéal est même de faire les deux pour plus de performances. Tu gardes la grosse table pour l'historique mais en même temps tu gardes le champ hits pour éviter de faire des SELECT COUNT() gourmand à chaque demande du nombre de hits de l'album.

 
Par saturn1  -  Le 28/11/2008 21:37  -  Haut de page  - 

Ah donc je fais dans la table album deux champs

vote_total et vote_semaine.

Et j'ajoute un cron qui remet à 0 toutes les semaines le champ vote_semaine?

Merci j'y avais pas pensé !!!

 

Ajouter une réponse à la discussion

Seuls les membres connectés sont autorisés à poster dans les forums !

Identifiez-vous
Join |  ID/MDP? |