Compartilhar via


DATESINPERIOD

aplica-se a:coluna calculadatabela calculadamedidacálculo visual

Nota

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

Retorna uma tabela que contém uma coluna de datas que começa com uma data de início especificada e continua para o número especificado e o tipo de intervalos de data.

Essa função é adequada para passar como um filtro para a função CALCULATE. Use-a para filtrar uma expressão por intervalos de data padrão, como dias, meses, trimestres ou anos.

Sintaxe

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

Parâmetros

Prazo Definição
dates Uma coluna de data.
start_date Uma expressão de data.
number_of_intervals Um inteiro que especifica o número de intervalos a serem adicionados ou subtraídos das datas.
interval O intervalo pelo qual deslocar as datas. O valor do intervalo pode ser um dos seguintes: DAY, MONTH, QUARTERe YEAR

Valor de retorno

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

Observações

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

  • Se o número especificado para number_of_intervals for positivo, as datas serão movidas para frente no tempo; se o número for negativo, as datas serão alteradas para trás no tempo.

  • O parâmetro interval é uma enumeração. Os valores válidos são DAY, MONTH, QUARTERe YEAR. Como é uma enumeração, os valores não são passados como cadeias de caracteres. Portanto, não coloque-os entre aspas.

  • A tabela retornada só pode conter datas armazenadas na coluna dates. Portanto, por exemplo, se a coluna dates começar a partir de 1º de julho de 2017 e o valor start_date for 1º de julho de 2016, a tabela retornada começará a partir de 1º de julho de 2017.

  • Essa função não tem suporte para uso no modo DirectQuery quando usada em colunas calculadas ou regras de RLS (segurança em nível de linha).

Exemplo

A definição de medida da tabela Sales a seguir usa a função DATESINPERIOD para calcular a receita do ano anterior (PY).

Observe que a fórmula usa a função MAX. Essa função retorna a data mais recente que está no contexto do filtro. Portanto, a função DATESINPERIOD retorna uma tabela de datas a partir da data mais recente do ano passado.

Exemplos neste artigo podem ser usados com o modelo adventure works dw 2020 power bi desktop de exemplo. Para obter o modelo, consulte DAX modelo de exemplo.

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

Considere que o relatório é filtrado até o mês de junho de 2020. A função MAX retorna 30 de junho de 2020. A função DATESINPERIOD retorna um intervalo de datas de 1º de julho de 2019 a 30 de junho de 2020. É um ano de valores de data a partir de 30 de junho de 2020 para o último ano.

funções de inteligência de tempo (DAX)função deDATESBETWEEN (DAX)DAX)