DATESINPERIOD
Gilt für:Berechnete SpalteBerechnete TabelleMeasurevisuelle Berechnung
Anmerkung
Diese Funktion wird für die Verwendung in visuellen Berechnungen abgeraten, da sie wahrscheinlich sinnlose Ergebnisse zurückgibt.
Gibt eine Tabelle zurück, die eine Spalte mit Datumsangaben enthält, die mit einem angegebenen Anfangsdatum beginnt und für die angegebene Anzahl und den Typ von Datumsintervallen fortgesetzt wird.
Diese Funktion eignet sich zum Übergeben als Filter an die CALCULATE-Funktion. Verwenden Sie ihn, um einen Ausdruck nach Standarddatumsintervallen wie Tagen, Monaten, Quartalen oder Jahren zu filtern.
Syntax
DATESINPERIOD(<dates>, <start_date>, <number_of_intervals>, <interval>)
Parameter
Ausdruck | Definition |
---|---|
dates |
Eine Datumsspalte. |
start_date |
Ein Datumsausdruck. |
number_of_intervals |
Eine ganze Zahl, die die Anzahl der Intervalle angibt, die zu den Datumsangaben addiert oder subtrahiert werden sollen. |
interval |
Das Intervall, nach dem die Datumsangaben verschoben werden sollen. Der Wert für das Intervall kann eine der folgenden sein: DAY , MONTH , QUARTER und YEAR |
Rückgabewert
Eine Tabelle, die eine einzelne Spalte mit Datumswerten enthält.
Bemerkungen
Im am häufigsten verwendeten Anwendungsfall ist
dates
ein Verweis auf die Datumsspalte einer markierten Datumstabelle.Wenn die für
number_of_intervals
angegebene Zahl positiv ist, werden die Datumsangaben in der Zeit nach vorne verschoben; Wenn die Zahl negativ ist, werden Datumsangaben in der Zeit rückwärts verschoben.Der
interval
-Parameter ist eine Enumeration. Gültige Werte sindDAY
,MONTH
,QUARTER
undYEAR
. Da es sich um eine Enumeration handelt, werden Werte nicht als Zeichenfolgen übergeben. Schließen Sie sie also nicht in Anführungszeichen ein.Die zurückgegebene Tabelle kann nur Datumsangaben enthalten, die in der spalte
dates
gespeichert sind. Wenn beispielsweise die spalte "dates
" ab dem 1. Juli 2017 beginnt und derstart_date
Wert 1. Juli 2016 ist, beginnt die zurückgegebene Tabelle vom 1. Juli 2017.Diese Funktion wird für die Verwendung im DirectQuery-Modus nicht unterstützt, wenn sie in berechneten Spalten oder Sicherheitsregeln auf Zeilenebene (RLS) verwendet wird.
Beispiel
In der folgenden Definition von "Sales table measure" wird die DATESINPERIOD-Funktion verwendet, um den Umsatz für das Vorjahr (PY) zu berechnen.
Beachten Sie, dass die Formel die funktion MAX verwendet. Diese Funktion gibt das neueste Datum zurück, das sich im Filterkontext befindet. Die funktion DATESINPERIOD gibt also eine Tabelle mit Datumsangaben zurück, die vom letzten Datum für das letzte Jahr beginnen.
Beispiele in diesem Artikel können mit dem Beispielmodell Adventure Works DW 2020 Power BI Desktop verwendet werden. Informationen zum Abrufen des Modells finden Sie unter DAX Beispielmodell.
Revenue PY =
CALCULATE(
SUM(Sales[Sales Amount]),
DATESINPERIOD(
'Date'[Date],
MAX('Date'[Date]),
-1,
YEAR
)
)
Beachten Sie, dass der Bericht nach dem Monat Juni 2020 gefiltert wird. Die funktion MAX gibt den 30. Juni 2020 zurück. Die funktion DATESINPERIOD gibt dann einen Datumsbereich vom 1. Juli 2019 bis zum 30. Juni 2020 zurück. Es ist ein Jahr von Datumswerten ab dem 30. Juni 2020 für das letzte Jahr.
Verwandte Inhalte
Zeitintelligenzfunktionen (DAX)Datums- und Uhrzeitfunktionen (DAX)DATESBETWEEN Funktion (DAX)