Partilhar via


DATESINPERIOD

Aplica-se a:Coluna calculadaTabela calculadaMeasureCálculo visual

Observação

Esta função é desencorajada para uso em cálculos visuais pois provavelmente retorna resultados sem sentido.

Retorna uma tabela que contains uma coluna de datas que começa com um início especificado dateand continua para o número especificado and tipo de intervalos de date.

Esta função é adequada para passar como um filter para a função CALCULATE. Use-o para filter uma expressão por intervalos de date padrão, como dias, meses, trimestres or anos.

Sintaxe

DATESINPERIOD(<dates>, <start_date>, <number_of_intervals>, <interval>)

Parâmetros

Vigência Definição
dates Uma coluna date.
start_date Uma expressão date.
number_of_intervals Um inteiro que especifica o número de intervalos a serem adicionados or subtraídos das datas.
interval O intervalo pelo qual as datas devem ser alteradas. A value para o intervalo pode ser uma das seguintes: DAY, MONTH, QUARTER, andYEAR

Regresso value

Uma tabela que contém uma única coluna de datevalues.

Comentários

  • No caso de uso mais comum, dates é uma referência à coluna date de uma tabela date marcada.

  • If o número especificado para number_of_intervals for positivo, as datas são antecipadas em time; if o número for negativo, as datas são deslocadas para trás em time.

  • O parâmetro interval é uma enumeração. Os values válidos são DAY, MONTH, QUARTER, andYEAR. Por ser uma enumeração, values não são passados como cadeias de caracteres. Portanto, não os coloque entre aspas.

  • A tabela retornada só pode conter datas armazenadas na coluna dates. Assim, por exemplo, if a coluna dates começar a partir de 1º de julho de 2017 and o start_datevalue for 1º de julho de 2016, a tabela retornada começará a partir de 1º de julho de 2017.

  • Esta função not é suportada para uso no modo DirectQuery quando usada em colunas calculadas or regras de segurança em nível de linha (RLS).

Exemplo

A seguinte tabela de vendas measure definição usa a função DATESINPERIOD para calculate a receita para o year anterior (PY).

Observe que a fórmula usa a função MAX. Essa função retorna o date mais recente que está no contexto filter. Assim, a função DATESINPERIOD retorna uma tabela de datas a partir do date mais recente para o lastyear.

Exemplos neste artigo podem ser usados com o modelo sample Adventure Works DW 2020 Power BI Desktop. Para obter o modelo, consulte DAXsample modelo.

Revenue PY =
CALCULATE(
    SUM(Sales[Sales Amount]),
    DATESINPERIOD(
        'Date'[Date],
        MAX('Date'[Date]),
        -1,
        YEAR
    )
)

Considere que o relatório é filtrado pelo month de junho de 2020. A função MAX retorna em 30 de junho de 2020. Em seguida, a função DATESINPERIOD retorna um daterange de 1º de julho de 2019 até 30 de junho de 2020. É um year de datevalues a partir de 30 de junho de 2020 para o lastyear.

Time funções de inteligência (DAX)Dateandtime funções (DAX)DATESBETWEEN função (DAX)