Udostępnij za pośrednictwem


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 to DAY, 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 kolumna dates rozpoczyna się od 1 lipca 2017 r., andstart_datevalue 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.

funkcje analizy Time (DAX) funkcjeDateandtime (DAX)DATESBETWEEN function (DAX)