DATESINPERIOD
S’applique à :Colonne calculéeTable calculéeMesureCalcul visuel
Remarque
L’utilisation de cette fonction est déconseillée dans les calculs visuels, car elle retournera probablement des résultats non pertinents.
Retourne une table contenant une colonne de dates qui commence à une date de début spécifiée et se poursuit pendant le nombre et le type d’intervalles de dates spécifiés.
Cette fonction peut être passée en tant que filtre à la fonction CALCULATE. Utilisez-la pour filtrer une expression par intervalles de date standard (jours, mois, trimestres ou années).
Syntaxe
DATESINPERIOD(<dates>, <start_date>, <number_of_intervals>, <interval>)
Paramètres
Terme | Définition |
---|---|
dates | Colonne de date. |
start_date | Expression de date. |
number_of_intervals | Entier qui spécifie le nombre d’intervalles à ajouter aux dates ou à soustraire des dates. |
interval | Intervalle selon lequel les dates doivent être avancées ou reculées. Cet intervalle peut avoir l’une des valeurs suivantes : DAY , MONTH , QUARTER et YEAR |
Valeur renvoyée
Table contenant une seule colonne de valeurs de date.
Remarques
Dans le cas d’usage le plus courant, dates référence la colonne de date d’une table de dates marquée.
Si le nombre spécifié pour number_of_intervals est positif, les dates sont avancées dans le temps ; s’il est négatif, les dates sont reculées dans le temps.
Le paramètre interval est une énumération. Les valeurs valides sont
DAY
,MONTH
,QUARTER
etYEAR
. Étant donné qu’il s’agit d’une énumération, les valeurs ne sont pas passées sous forme de chaînes. Vous ne devez donc pas les placer entre guillemets.La table retournée peut contenir uniquement des dates stockées dans la colonne dates. Par exemple, si la colonne dates commence au 1er juillet 2017 et que la valeur de start_date est le 1er juillet 2016, la table retournée commence au 1er juillet 2017.
Cette fonction n’est pas prise en charge pour une utilisation en mode DirectQuery quand elle est utilisée dans des colonnes calculées ou des règles de sécurité au niveau des lignes (RLS).
Exemple
La définition de mesure de la table Sales suivante utilise la fonction DATESINPERIOD pour calculer le chiffre d’affaires de l’année précédente (PY).
Notez que la formule utilise la fonction MAX. Cette fonction retourne la date la plus récente incluse dans le contexte de filtre. Par conséquent, la fonction DATESINPERIOD retourne une table de dates à partir de la date la plus récente de l’année dernière.
Les exemples de cet article peuvent être utilisés avec l'exemple de modèle Adventure Works DW 2020 Power BI Desktop. Pour obtenir le modèle, consultez Exemple de modèle DAX.
Revenue PY =
CALCULATE(
SUM(Sales[Sales Amount]),
DATESINPERIOD(
'Date'[Date],
MAX('Date'[Date]),
-1,
YEAR
)
)
Supposons que le rapport est filtré sur le mois de juin 2020. La fonction MAX retourne la date du 30 juin 2020. La fonction DATESINPERIOD retourne ensuite une plage de dates comprises entre le 1er juillet 2019 et le 30 juin 2020. Il s’agit d’une année de valeurs de date à partir du 30 juin 2020 de l’année dernière.
Contenu connexe
Fonctions d’intelligence temporelle (DAX)
Fonctions de date et heure (DAX)
DATESBETWEEN, fonction (DAX)