Share via


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 et YEAR. É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.

Fonctions d’intelligence temporelle (DAX)
Fonctions de date et heure (DAX)
DATESBETWEEN, fonction (DAX)