DATESBETWEEN

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 für die Datumsspalteneingabe eine Tabelle zurück, die eine Spalte mit Datumsangaben enthält, die mit einem angegebenen Anfangsdatum beginnt und bis zu einem angegebenen Enddatum fortgesetzt wird.

Gibt für die Kalendereingabe eine Tabelle zurück, die mit einem angegebenen Anfangsdatum beginnt und bis zu einem angegebenen Enddatum fortgesetzt wird. Die Tabelle enthält alle primären markierten Spalten und alle zeitbezogenen Spalten.

Diese Funktion eignet sich zum Übergeben als Filter an die CALCULATE-Funktion. Verwenden Sie ihn, um einen Ausdruck nach einem benutzerdefinierten Datumsbereich zu filtern.

Anmerkung

Wenn Sie mit Standarddatumsintervallen wie Tagen, Monaten, Quartalen oder Jahren arbeiten, verwenden Sie die besser geeignete DATESINPERIOD Funktion.

Syntax

DATESBETWEEN(<dates or calendar>, <StartDate>, <EndDate>)

Parameter

Ausdruck Definition
dates or calendar Eine Spalte, die Datumsangaben oder einen Kalenderverweis enthält
StartDate Ein Datums-/Tagausdruck. Wenn Sie die Kalendersyntax verwenden, verwenden Sie denselben Datentyp wie die primäre Spalte, die mit der Kategorie "Tag" markiert ist.
EndDate Ein Datums-/Tagausdruck. Wenn Sie die Kalendersyntax verwenden, verwenden Sie denselben Datentyp wie die primäre Spalte, die mit der Kategorie "Tag" markiert ist.

Rückgabewert

Bei der Eingabe von Datumsspalten enthält eine Tabelle, die eine einzelne Spalte mit Datumswerten enthält.
Bei Kalendereingaben enthält eine Tabelle, die alle primären markierten Spalten und alle zeitbezogenen Spalten enthält.

Bemerkungen

  • Im am häufigsten verwendeten Anwendungsfall ist dates ein Verweis auf die Datumsspalte einer markierten Datumstabelle.

  • Ist StartDate dies BLANKder StartDate erste Wert in der dates Spalte. Für Kalender ist es der erste Wert in einer Spalte, die als Tag markiert ist.

  • Ist EndDate dies BLANKder EndDate Der letzte Wert in der dates Spalte. Für Kalender ist es der letzte Wert in einer Spalte, die als Tag markiert ist.

  • Datumsangaben, die als StartDate und EndDate verwendet werden, sind inklusive. Wenn der StartDate Wert beispielsweise der 1. Juli 2019 ist, wird dieses Datum in der zurückgegebenen Tabelle enthalten (vorausgesetzt, das Datum ist in der dates Spalte vorhanden).

  • Bei der Datumsspalteneingabe kann die zurückgegebene Tabelle nur Datumsangaben enthalten, die in der Dates Spalte gespeichert sind. Wenn die Dates Spalte beispielsweise vom 1. Juli 2017 beginnt und der StartDate Wert 1. Juli 2016 ist, beginnt die zurückgegebene Tabelle vom 1. Juli 2017.

  • Wenn das Eingabedatum für kalendereingaben in der Spalte "Tag" nicht gefunden wird, wird sie als BLANK" behandelt" und der erste oder der letzte Wert verwendet.

  • Verwenden Sie für die Kalendereingabe denselben Datentyp und dasselbe Format wie die markierte Tagesspalte für das Startdatum und das Enddatum. Wenn die Spalte beispielsweise das Format YYYY-Sn-Qn-Mnn-Wnn-Dnn verwendet (z. B. "2014-S2-Q4-M11-W45-D03"), muss das Start- und Enddatum demselben Format entsprechen (z. B. "2015-S2-Q4-M11-W45-D03"). Andernfalls ist das Verhalten nicht definiert.

  • 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

Die folgende Definition der Tabelle "Sales table measure" verwendet die DATESBETWEEN-Funktion, um eine - -Berechnung (LTD) zu erzeugen. Das Leben bis zum Datum stellt die Anhäufung eines Measures im Laufe der Zeit seit dem Anfang der Zeit dar.

Die Formel verwendet die MAX Funktion. Diese Funktion gibt das neueste Datum zurück, das sich im Filterkontext befindet. Die funktion DATESBETWEEN gibt also eine Tabelle mit Datumsangaben zurück, die von dem frühesten Datum bis zum spätesten Datum beginnen, das gemeldet wird.

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.

Customers LTD =
CALCULATE (
    DISTINCTCOUNT ( Sales[CustomerKey] ),
    DATESBETWEEN ( 'Date'[Date], BLANK (), MAX ( 'Date'[Date] ) )
)

Beachten Sie, dass das früheste Datum, das in der Tabelle Datum gespeichert ist, den 1. Juli 2017 ist. Wenn ein Bericht also das Measure nach dem Monat Juni 2020 filtert, gibt die funktion DATESBETWEEN einen Datumsbereich vom 1. Juli 2017 bis zum 30. Juni 2020 zurück.

Beispiel für kalenderbasierte Zeitintelligenz

Die folgende Definition der Tabelle "Sales table measure" verwendet die DATESBETWEEN-Funktion, um eine - -Berechnung (LTD) zu erzeugen. Das Leben bis zum Datum stellt die Anhäufung eines Measures im Laufe der Zeit seit dem Anfang der Zeit dar.

Die Formel verwendet die MAX Funktion. Diese Funktion gibt den maximalen Datekey zurück, der sich im Filterkontext befindet. Die funktion DATESBETWEEN gibt also eine Tabelle mit Datumsangaben zurück, die von dem frühesten Datum bis zum spätesten Datum beginnen, das gemeldet wird. Wir verwenden DateKey als Beispiel, um anzuzeigen, dass die Kategorie "Tag" mit einer Spalte markiert werden kann, die nicht datumstypisch ist.

Customers LTD =
CALCULATE (
    DISTINCTCOUNT ( Sales[CustomerKey] ),
    DATESBETWEEN ( FiscalCalendar, BLANK (), MAX ( 'Date'[DateKey] ) )
)