DATESINPERIOD
Dotyczy:kolumna obliczeniowatabela obliczeniowaMeasureobliczenia wizualne
Nuta
Ta funkcja jest zniechęcana do użycia w obliczeniach wizualizacji , ponieważ prawdopodobnie zwraca wyniki bez znaczenia.
Zwraca tabelę, która contains kolumnę dat rozpoczynającą się od określonej dateand początkowej w dalszym ciągu dla określonej liczby and typu date interwałów.
Ta funkcja jest odpowiednia do przekazania jako filter do funkcji CALCULATE. Służy do filter wyrażenia według standardowych interwałów date, takich jak dni, miesiące, kwartały, or lata.
Składnia
DATESINPERIOD(<dates>, <start_date>, <number_of_intervals>, <interval>)
Parametry
Termin | Definicja |
---|---|
dates |
Kolumna date. |
start_date |
Wyrażenie date. |
number_of_intervals |
Liczba całkowita określająca liczbę interwałów do dodania, or odejmowania od dat. |
interval |
Interwał, według którego mają być przesunięte daty. Interwał value może być jednym z następujących elementów: DAY , MONTH , QUARTER , andYEAR |
Zwracanie value
Tabela zawierająca jedną kolumnę datevalues.
Uwagi
W najczęstszym przypadku użycia
dates
jest odwołaniem do kolumny date oznaczonej tabeli date.If liczba określona dla
number_of_intervals
jest dodatnia, daty są przenoszone do przodu w time; if liczba jest ujemna, daty są przesuwane do tyłu w time.Parametr
interval
jest wyliczeniem. Prawidłowe values toDAY
,MONTH
,QUARTER
, andYEAR
. Ponieważ jest to wyliczenie, values nie są przekazywane jako ciągi. Nie ujęć ich w cudzysłów.Zwrócona tabela może zawierać tylko daty przechowywane w kolumnie
dates
. Na przykład if kolumnadates
rozpoczyna się od 1 lipca 2017 r., andstart_date
value to 1 lipca 2016 r., zwrócona tabela rozpocznie się od 1 lipca 2017 r.Ta funkcja jest not obsługiwana do użycia w trybie DirectQuery w przypadku użycia w kolumnach obliczeniowych or reguł zabezpieczeń na poziomie wiersza.
Przykład
Poniższa tabela Salesmeasure używa funkcji DATESINPERIOD do calculate przychodów z poprzedniej year (PY).
Zwróć uwagę, że formuła używa funkcji MAX. Ta funkcja zwraca najnowsze date w kontekście filter. Dlatego funkcja DATESINPERIOD zwraca tabelę dat rozpoczynającą się od najnowszej date dla lastyear.
Przykłady w tym artykule mogą być używane z modelem sample Adventure Works DW 2020 Power BI Desktop. Aby uzyskać model, zobacz DAXsample model.
Revenue PY =
CALCULATE(
SUM(Sales[Sales Amount]),
DATESINPERIOD(
'Date'[Date],
MAX('Date'[Date]),
-1,
YEAR
)
)
Należy wziąć pod uwagę, że raport jest filtrowany przez month czerwca 2020 r. Funkcja MAX zwraca 30 czerwca 2020 r. Następnie funkcja DATESINPERIOD zwraca daterange z 1 lipca 2019 r. do 30 czerwca 2020 r. Jest to yeardatevalues począwszy od 30 czerwca 2020 r. dla lastyear.
Related zawartości
funkcje analizy Time (DAX) funkcjeDateandtime (DAX)DATESBETWEEN function (DAX)