Udostępnij za pośrednictwem


DATESINPERIOD

Dotyczy:kolumna obliczeniowatabela obliczeniowaMiarawizualizacji

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, QUARTERi 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 to DAY, MONTH, QUARTERi YEAR. 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 kolumna dates 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.

funkcje analizy czasowej (DAX)funkcje daty i godziny (DAX)DATESBETWEEN funkcji (DAX)