tu dois vouloir faire du datawarehouse, dans la serie opensource il y a un etl qui s'appelle kettle, je ne l'avais installe que pour tester et ca m'avait l'air pas mal du tout.
la maniere classique de travailler est d'utiliser une table referentiel de date ou tu auras deja ta decoupe jour, mois, annee, trimestre, etc et donc a priori un record par jour, tu peux deja precalculer ta table sur un certain nombre d'annee, et donc l'idée est de travailler avec des surrogate key pour chacun de tes records, c'est ce qu'on appelle alors une table de dimension.
kettle devrait etre capable d'injecter dans ta table de fait l'id correspondant a ta table de dimension.
si tu n'es pas a l'aise avec le dwh regarde du cote des star schema pour ton implementation