Partilhar via


DATESINPERIOD

Aplica-se a: Coluna calculada Tabela calculada Medida Cálculo visual

Nota

Esta 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.

Esta função é adequada para passar como um filtro para a função CALCULATE . Use-o 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

Termo Definição
Datas 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 as datas devem ser alteradas. O valor para intervalo pode ser um dos seguintes: DAY, MONTH, QUARTER, e YEAR

Valor devolvido

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

Observações

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

  • Se o número especificado para number_of_intervals for positivo, as datas são antecipadas no tempo, se o número for negativo, as datas são deslocadas para trás no tempo.

  • O parâmetro interval é uma enumeração. Os valores válidos são DAY, MONTH, QUARTER, e YEAR. Por ser uma enumeração, os valores 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, se a coluna de datas 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.

  • Esta função não é suportada para utilização no modo DirectQuery quando utilizada em colunas calculadas ou regras de segurança ao nível da linha (RLS).

Exemplo

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

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

Exemplos neste artigo podem ser usados com o modelo de exemplo do Power BI Desktop do Adventure Works DW 2020. Para obter o modelo, consulte Modelo de exemplo DAX.

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

Considere que o relatório é filtrado pelo mês de junho de 2020. A função MAX retorna em 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 ano passado.

Funções de inteligência de tempo (DAX)
Funções de data e hora (DAX)
Função DATESBETWEEN (DAX)