Delen via


DATESBETWEEN

Van toepassing op:berekende kolomberekende tabelMetingVisuele berekening

Notitie

Deze functie wordt afgeraden voor gebruik in visuele berekeningen omdat deze waarschijnlijk betekenisloze resultaten oplevert.

Retourneert een tabel die een kolom met datums bevat die begint met een opgegeven begindatum en doorgaat tot een opgegeven einddatum.

Deze functie is geschikt om als filter door te geven aan de CALCULATE functie. Gebruik deze om een expressie te filteren op een aangepast datumbereik.

Notitie

Als u werkt met standaarddatumintervallen zoals dagen, maanden, kwartalen of jaren, wordt u aangeraden de beter geschikte DATESINPERIOD functie te gebruiken.

Syntaxis

DATESBETWEEN(<Dates>, <StartDate>, <EndDate>)

Parameters

Term Definitie
Dates Een datumkolom.
StartDate Een datumexpressie.
EndDate Een datumexpressie.

Retourwaarde

Een tabel met één kolom met datumwaarden.

Opmerkingen

  • In het meest voorkomende gebruiksvoorbeeld is dates een verwijzing naar de datumkolom van een gemarkeerde datumtabel.

  • Als StartDateBLANKis, is StartDate de vroegste waarde in de kolom dates.

  • Als EndDate is BLANK, is EndDate de meest recente waarde in de kolom dates.

  • Datums die worden gebruikt als de StartDate en EndDate zijn inclusief. Als de StartDate waarde bijvoorbeeld 1 juli 2019 is, wordt die datum opgenomen in de geretourneerde tabel (mits de datum bestaat in de kolom dates).

  • De geretourneerde tabel kan alleen datums bevatten die zijn opgeslagen in de kolom Dates. Als de kolom Dates bijvoorbeeld begint vanaf 1 juli 2017 en de StartDate waarde 1 juli 2016 is, begint de geretourneerde tabel vanaf 1 juli 2017.

  • Deze functie wordt niet ondersteund voor gebruik in de DirectQuery-modus wanneer deze wordt gebruikt in regels voor beveiliging op rijniveau (berekende kolommen of beveiliging op rijniveau).

Voorbeeld

In de volgende definitie van Sales tabelmeting wordt de functie DATESBETWEEN gebruikt om een berekening van levensduur tot heden te produceren (LTD). Levensduur tot heden vertegenwoordigt de accumulatie van een meting in de loop van de tijd sinds het begin van de tijd.

U ziet dat de formule gebruikmaakt van de functie MAX. Deze functie retourneert de laatste datum die zich in de filtercontext bevindt. De functie DATESBETWEEN retourneert dus een tabel met datums vanaf de vroegste datum tot de laatste datum die wordt gerapporteerd.

Voorbeelden in dit artikel kunnen worden gebruikt met het voorbeeldmodel Adventure Works DW 2020 Power BI Desktop. Zie DAX voorbeeldmodelom het model op te halen.

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

Houd er rekening mee dat de vroegste datum die is opgeslagen in de tabel Datum 1 juli 2017 is. Dus wanneer een rapport de meting filtert op de maand juni 2020, retourneert de functie DATESBETWEEN een datumbereik van 1 juli 2017 tot 30 juni 2020.