DATESINPERIOD
Dotyczy:kolumna obliczeniowa
tabela obliczeniowa
Miara
wizualizacji
Nuta
Ta funkcja jest zniechęcana do użycia w obliczeniach wizualizacji , ponieważ prawdopodobnie zwraca wyniki bez znaczenia.
Zwraca tabelę zawierającą kolumnę dat rozpoczynającą się od określonej daty rozpoczęcia i kontynuuje dla określonej liczby i typu interwałów dat.
Ta funkcja jest odpowiednia do przekazania jako filtru do funkcji CALCULATE. Służy do filtrowania wyrażenia według standardowych interwałów dat, takich jak dni, miesiące, kwartały lub lata.
Składnia
DATESINPERIOD(<dates>, <start_date>, <number_of_intervals>, <interval>)
Parametry
Termin | Definicja |
---|---|
dates |
Kolumna daty. |
start_date |
Wyrażenie daty. |
number_of_intervals |
Liczba całkowita określająca liczbę interwałów do dodania lub odejmowania od dat. |
interval |
Interwał, według którego mają być przesunięte daty. Wartość interwału może być jedną z następujących wartości: DAY , MONTH , QUARTER i YEAR |
Wartość zwracana
Tabela zawierająca jedną kolumnę wartości daty.
Uwagi
W najczęstszym przypadku użycia
dates
jest odwołaniem do kolumny dat oznaczonej tabeli dat.Jeśli liczba określona dla
number_of_intervals
jest dodatnia, daty są przenoszone do przodu w czasie; jeśli liczba jest ujemna, daty są przesunięte do tyłu w czasie.Parametr
interval
jest wyliczeniem. Prawidłowe wartości toDAY
,MONTH
,QUARTER
iYEAR
. Ponieważ jest to wyliczenie, wartości 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 jeśli kolumnadates
rozpoczyna się od 1 lipca 2017 r., a wartośćstart_date
to 1 lipca 2016 r., zwrócona tabela rozpocznie się od 1 lipca 2017 r.Ta funkcja nie jest obsługiwana w trybie DirectQuery w przypadku użycia w kolumnach obliczeniowych lub regułach zabezpieczeń na poziomie wiersza.
Przykład
Poniższa definicja miary tabeli Sales używa funkcji DATESINPERIOD do obliczania przychodu za poprzedni rok (PY).
Zwróć uwagę, że formuła używa funkcji MAX. Ta funkcja zwraca najnowszą datę w kontekście filtru. Dlatego funkcja DATESINPERIOD zwraca tabelę dat rozpoczynającą się od najnowszej daty dla ostatniego roku.
Przykłady w tym artykule mogą być używane z przykładowym modelem Adventure Works DW 2020 Power BI Desktop. Aby uzyskać model, zobacz DAX przykładowy 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 według miesiąca czerwca 2020 r. Funkcja MAX zwraca 30 czerwca 2020 r. Następnie funkcja DATESINPERIOD zwraca zakres dat z 1 lipca 2019 r. do 30 czerwca 2020 r. Jest to rok wartości dat począwszy od 30 czerwca 2020 r. w ciągu ostatniego roku.
Powiązana zawartość
funkcje analizy czasowej (DAX)funkcje daty i godziny (DAX)DATESBETWEEN funkcji (DAX)