Partilhar via


DATESBETWEEN

Aplica-se a:Coluna calculadaTabela calculadaMedidaCálculo visual

Observação

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 até uma data de término especificada.

Esta função é adequada para passar como um filtro para a função CALCULATE. Use-o para filtrar uma expressão por um intervalo de datas personalizado.

Observação

Se você estiver trabalhando com intervalos de data padrão, como dias, meses, trimestres ou anos, é recomendável usar a função DATESINPERIOD mais adequada.

Sintaxe

DATESBETWEEN(<Dates>, <StartDate>, <EndDate>)

Parâmetros

Vigência Definição
Dates Uma coluna de data.
StartDate Uma expressão de data.
EndDate Uma expressão de data.

Valor de retorno

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

Comentários

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

  • Se StartDate for BLANK, então StartDate será o valor mais antigo na coluna dates.

  • Se EndDate for BLANK, EndDate será o valor mais recente na coluna dates.

  • As datas utilizadas como StartDate e EndDate estão incluídas. Assim, por exemplo, se o valor StartDate for 1 de julho de 2019, essa data será incluída na tabela devolvida (desde que a data exista na coluna dates).

  • A tabela retornada só pode conter datas armazenadas na coluna Dates. Assim, por exemplo, se a coluna Dates começar a partir de 1º de julho de 2017 e o valor StartDate 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 de tabela de de vendas usa a função para produzir um cálculo de de vida até a data (LTD). A vida até à data representa a acumulação de uma medida ao longo do tempo desde o início dos tempos.

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 DATESBETWEEN retorna uma tabela de datas que começam desde a data mais antiga até a data mais recente que está sendo relatada.

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 DAX exemplo de modelo.

Customers LTD =
CALCULATE(
    DISTINCTCOUNT(Sales[CustomerKey]),
    DATESBETWEEN(
        'Date'[Date],
        BLANK(),
        MAX('Date'[Date])
    )
)

Considere que a data mais antiga armazenada na tabela Data é 1º de julho de 2017. Assim, quando um relatório filtra a medida até o mês de junho de 2020, a função DATESBETWEEN retorna um intervalo de datas de 1º de julho de 2017 a 30 de junho de 2020.