Merk
Tilgang til denne siden krever autorisasjon. Du kan prøve å logge på eller endre kataloger.
Tilgang til denne siden krever autorisasjon. Du kan prøve å endre kataloger.
gjelder:
beregnet kolonne
beregnet tabell
måle
visualobjektberegning
Notat
Denne funksjonen frarådes for bruk i visuelle beregninger da den sannsynligvis returnerer meningsløse resultater.
For inndata for datokolonne returnerer du en tabell som inneholder en kolonne med datoer som begynner med en angitt startdato og fortsetter til en angitt sluttdato.
For kalenderinndata returnerer du en tabell som begynner med en angitt startdato og fortsetter til en angitt sluttdato. Tabellen inneholder alle primære merkede kolonner og alle tidsrelaterte kolonner.
Denne funksjonen er egnet til å overføres som et filter til CALCULATE-funksjonen. Bruk det til å filtrere et uttrykk etter et egendefinert datoområde.
Notat
Hvis du arbeider med standard datointervaller, for eksempel dager, måneder, kvartaler eller år, anbefales det at du bruker den beste DATESINPERIOD-funksjonen.
Syntaks
DATESBETWEEN(<dates> or <calendar>, <StartDate>, <EndDate>)
Parametere
| Vilkår | Definisjon |
|---|---|
dates or calendar |
En kolonne som inneholder datoer eller en kalenderreferanse |
StartDate |
Et dato/dag-uttrykk. Hvis kalendersyntaks brukes, kan du bruke samme datatype som primærkolonnen som er merket til Dag-kategorien. |
EndDate |
Et dato/dag-uttrykk. Hvis kalendersyntaks brukes, kan du bruke samme datatype som primærkolonnen som er merket til Dag-kategorien. |
Returverdi
For inndata for datokolonne, en tabell som inneholder én kolonne med datoverdier.
For kalenderinndata, en tabell som inneholder alle primærkodede kolonner og alle tidsrelaterte kolonner.
Merknader
I det vanligste brukstilfellet er
datesen referanse til datokolonnen i en merket datotabell.Hvis
StartDateer BLANK, blirStartDateden tidligste verdien idateskolonnen. For kalenderen blir det den første verdien i kolonnen som er merket som dag.Hvis
EndDateer BLANK, vilEndDatevære den nyeste verdien idateskolonnen. For kalenderen blir det den siste verdien i kolonnen som er merket som dag.Datoer som brukes som
StartDateogEndDateer inkludert. Hvis for eksempel denStartDateverdien er 1. juli 2019, inkluderes denne datoen i den returnerte tabellen (forutsatt at datoen finnes i kolonnendates).For datokolonneinndata kan den returnerte tabellen bare inneholde datoer som er lagret i
Dateskolonnen. Så hvis for eksempel denDateskolonnen starter fra 1. juli 2017 og denStartDateverdien er 1. juli 2016, starter den returnerte tabellen fra 1. juli 2017.Hvis inndatadatoen ikke finnes i den kodede dagkolonnen for kalenderinndata, behandles den som BLANK , og dermed brukes den første/siste verdien.
Bruk samme datatype og format som den kodede dagkolonnen for startdato og sluttdato for kalenderinndata. Hvis kolonnen for eksempel bruker formatet YYYY-Sn-Qn-Mnn-Wnn-Dnn (f.eks. "2014-S2-Q4-M11-W45-D03"), må startdatoen og sluttdatoen følge samme format (for eksempel "2015-S2-Q4-M11-W45-D03"). Ellers er virkemåten udefinert.
-
Denne funksjonen støttes ikke for bruk i DirectQuery-modus når den brukes i beregnede kolonner eller regler for sikkerhet på radnivå (RLS).
Eksempel
Følgende Måldefinisjon for salg tabell bruker DATESBETWEEN-funksjonen til å produsere en hittil i (LTD). Levetid til dags dato representerer akkumuleringen av et mål over tid siden begynnelsen av tiden.
Legg merke til at formelen bruker MAX-funksjonen. Denne funksjonen returnerer den siste datoen som er i filterkonteksten. Så DATESBETWEEN-funksjonen returnerer en tabell med datoer som begynner fra den tidligste datoen til den siste datoen som rapporteres.
Eksempler i denne artikkelen kan brukes med eksempelmodellen Adventure Works DW 2020 Power BI Desktop. Hvis du vil ha modellen, kan du se DAX eksempelmodell.
Customers LTD =
CALCULATE (
DISTINCTCOUNT ( Sales[CustomerKey] ),
DATESBETWEEN ( 'Date'[Date], BLANK (), MAX ( 'Date'[Date] ) )
)
Tenk på at den tidligste datoen som er lagret i Dato-tabellen, er 1. juli 2017. Så når en rapport filtrerer målet innen juni måned 2020, returnerer DATESBETWEEN-funksjonen et datointervall fra 1. juli 2017 til 30. juni 2020.
Eksempel på kalenderbasert tidsintelligens
Følgende Måldefinisjon for salg tabell bruker DATESBETWEEN-funksjonen til å produsere en hittil i (LTD). Levetid til dags dato representerer akkumuleringen av et mål over tid siden begynnelsen av tiden.
Legg merke til at formelen bruker MAX-funksjonen. Denne funksjonen returnerer den maksimale datonøkkelen som er i filterkonteksten. Så DATESBETWEEN-funksjonen returnerer en tabell med datoer som begynner fra den tidligste datoen til den siste datoen som rapporteres. DateKey brukes som et eksempel for å vise at «Dag»-kategorien kan merkes med en kolonne som ikke er datoskrevet
Customers LTD =
CALCULATE (
DISTINCTCOUNT ( Sales[CustomerKey] ),
DATESBETWEEN ( FiscalCalendar, BLANK (), MAX ( 'Date'[DateKey] ) )
)