Obtenir des dates entre une plage de dates
J'ai besoin d'obtenir toutes les dates présentes dans la plage de dates à l'aide de SQL Server 2005
source d'informationauteur
Vous devez vous connecter pour publier un commentaire.
J'ai besoin d'obtenir toutes les dates présentes dans la plage de dates à l'aide de SQL Server 2005
source d'informationauteur
Vous devez vous connecter pour publier un commentaire.
Ici, vous allez:
Si vous avez des dates dans une table et veulent simplement sélectionner ceux entre les deux dates, vous pouvez utiliser
Si vous voulez produire de la date à partir de rien, vous pourriez le faire avec une boucle ou vous pouvez remplir une table temporaire avec les dates, puis sélectionnez à partir de ce.
Un peu plus compliqué, mais peut-être plus souple serait de rendre l'utilisation d'une table contenant une séquence de jeu de nombres. Cela permet de plus d'une plage de dates avec des intervalles différents.
Je actully utiliser une variante de cette diviser des dates dans les tranches de temps (avec des intervalles variés mais généralement 5 minutes de long). My @tableau de nombres contient un max de 288 puisque c'est le nombre total de 5 min machines à sous que vous pouvez avoir dans une période de 24 heures.
Ici de la version Oracle de la date de génération:
au lieu de all_objects il peut être n'importe quelle table avec assez de lignes pour couvrir la gamme.
Si ce que vous voulez est d'obtenir toutes les dates présentes dans votre base de données entre deux dates (c'est à dire à quelles dates ont les clients les commandes passées au cours du 3e trimestre 2008), on peut écrire quelque chose comme ceci:
Pour générer une plage de dates que vous pourriez écrire une fonction table. C'est une fonction qui crée une dimension de date pour un entrepôt de données - vous pouvez probablement s'adapter assez facilement par découper les promotions.
Edit: Ici, c'est sans la date de hiérarchie de dimension.