Bonjour à tous,
Je rencontre un petit souci de conception que je me résoud à vous soumettre enfin:
J'ai une table de gestion de prix que je ne sais pas structurer. J'alterne depuis maintenant trois ans entre deux options qui ne sont pas satisfaisantes:
Solution 1: Avec le détail des années
Ici, ma table est structurée ainsi:
- Infos de la transaction (acheteur, vendeur, produit, prix)
- Date
- Version
- Année
J'ai donc une liste de prix par année. Le champ date me donne la date du prix. J'ai crée un champ Version pour les changements de prix en cours d'années. Version 0 est le dernier prix, Version 1 celui d'avant, etc... Ici, le champ Version se limite à l'année en cours, cad que chaque années, au 1er Janvier, chaque transaction n'a qu'une version 0. Pendant l'année, des version 1+ apparaissent.
Le +: je peux assez facilement comparer mes listes de prix d'une année sur l'autre.
Le -: comme seulement 50% de mes prix changent chaque années, je fais des copié collé d'une année sur l'autre en Janvier, ce qui fait grossir ma table
Solution 2: Sans le détail des années
Ici, ma table est structurée ainsi:
- Infos de la transaction (acheteur, vendeur, produit, prix)
- Date
- Version
Ici, la Version 0 me donne tous les prix actuels. Je peux toujours consulter les anciens prix par date, la version 1 étant celle du dernier changement de prix.
Le +: je réduis la taille de ma table de 50% puisque je n'ai pas de doublons
Le -: je suis incapable (je n'ai pas trouvé plutôt) de créer la liste de prix d'une année anterieure. En effet, pour extraire la liste de prix 2002, il faudrait que je sois capable de filtrer pour chaque transaction, le dernier update jusqu'a 2002 (mais pas après).
Y a-t-il un moyen de résoudre le problème, cad, garder la solution 2, tout en étant capable de sortir des listes par années?
Je vous ai mis ci-dessous l'exemple d'un prix géré des deux manières. Une transaction est à 12€ en 2000 et change de prix en Juillet 2004.
Merci à ceux qui m'ont lu jusqu'au bout !
bonne journée
Partager