Você quer calcular o número de dias entre duas datas em um banco de dados do Notion. As fórmulas do Notion usam uma função nativa chamada dateBetween para retornar a diferença em dias, horas, minutos ou segundos. Este artigo explica a sintaxe correta da função dateBetween, mostra como lidar com datas vazias ou futuras e cobre erros comuns que produzem resultados incorretos ou mensagens de erro.
Principais Conclusões: Fórmula de Data no Notion para Diferença em Dias
- dateBetween(Fim, Início, ‘dias’): Retorna o número de dias entre duas propriedades de data; a ordem dos argumentos determina um resultado positivo ou negativo.
- prop(“Data 2”) – prop(“Data 1”): Uma subtração abreviada que também funciona se ambas as propriedades forem do tipo data, mas retorna uma duração em milissegundos por padrão.
- if(empty(prop(“Data 2”)), “”, dateBetween(…)): Use este padrão para evitar saídas em branco ou erros quando um dos campos de data estiver vazio.
Como a Função dateBetween Funciona no Notion
As fórmulas do Notion são escritas em uma propriedade do tipo Fórmula. A função dateBetween recebe três argumentos: a data posterior, a data anterior e a unidade de tempo. A unidade deve ser uma string entre aspas simples, por exemplo 'dias', 'horas', 'minutos', 'segundos', 'semanas', 'meses' ou 'anos'. Se a primeira data for anterior à segunda, o resultado é um número negativo. Para sempre obter um número positivo, você pode envolver a função com abs().
A propriedade de fórmula não exige a instalação de nenhum complemento ou integração. Ela funciona com qualquer propriedade de data padrão, incluindo datas de uma relação de banco de dados ou de um rollup. O único pré-requisito é que ambas as entradas sejam valores de data válidos no Notion. Se uma das propriedades estiver vazia, a fórmula retorna um erro ou uma saída em branco, dependendo de como você escreve a condição.
Sintaxe do dateBetween
A sintaxe exata é:
dateBetween(prop("Data Final"), prop("Data Inicial"), "dias")
Substitua Data Final e Data Inicial pelos nomes reais de suas colunas de data. A string da unidade deve estar em minúsculas e entre aspas duplas. O Notion não aceita formas plurais como 'dia' ou 'dias'.
Passos para Adicionar uma Fórmula de Dias Entre Datas ao Seu Banco de Dados
- Abra o banco de dados onde você deseja a fórmula
Clique no nome do banco de dados no topo da página no Notion. Certifique-se de que o banco de dados já tenha pelo menos duas colunas de data, por exemploData InicialeData Final. - Adicione uma nova propriedade de Fórmula
Clique no botão+no último cabeçalho de coluna. No menu de tipo de propriedade, selecione Fórmula. Nomeie a propriedade comoDias Entreou qualquer rótulo de sua preferência. - Escreva a fórmula dateBetween básica
No editor de fórmulas, digite:dateBetween(prop("Data Final"), prop("Data Inicial"), "dias")
Clique em Concluído. A coluna agora mostra o número de dias entre as duas datas. Se a data final for anterior à data inicial, o número será negativo. - Torne o resultado sempre positivo
Se você deseja a diferença absoluta independentemente da ordem, envolva a função comabs():abs(dateBetween(prop("Data Final"), prop("Data Inicial"), "dias"))
Clique em Concluído. Agora o resultado é sempre um número não negativo. - Lidar com campos de data vazios
Se qualquer propriedade de data estiver vazia, a fórmula mostra um erro. Para exibir uma célula em branco, use uma condiçãoif:if(empty(prop("Data Final")) or empty(prop("Data Inicial")), "", dateBetween(prop("Data Final"), prop("Data Inicial"), "dias"))
Clique em Concluído. Linhas vazias agora exibem uma célula em branco em vez de um erro.
Erros Comuns e Como Evitá-los
A fórmula retorna um erro quando uma data está vazia
Isso acontece porque dateBetween requer dois valores de data válidos. Use o padrão if(empty(...)) mostrado no passo 5 para retornar uma string vazia. Você também pode retornar 0 ou uma mensagem personalizada como "Sem data final" em vez de uma string vazia.
O resultado mostra um número grande como 86400000
Isso ocorre quando você subtrai duas propriedades de data diretamente sem usar dateBetween. Por exemplo, prop("Data Final") - prop("Data Inicial") retorna a diferença em milissegundos, não em dias. Sempre use dateBetween com a unidade 'dias' para obter o número correto.
Números negativos aparecem quando as datas estão trocadas
Se o primeiro argumento for anterior ao segundo, o resultado é negativo. Envolva toda a função com abs() para obter o valor absoluto. Alternativamente, troque a ordem dos argumentos se você sempre quiser um número positivo.
A fórmula não atualiza quando uma data muda
As fórmulas do Notion recalculam automaticamente sempre que qualquer propriedade referenciada é editada. Se a fórmula parecer travada, atualize a página pressionando F5 ou feche e reabra a visualização do banco de dados. Se o problema persistir, verifique se a propriedade da fórmula não foi acidentalmente definida como um valor estático.
Métodos de Fórmula de Data no Notion Comparados
| Método | Função dateBetween | Subtração Direta |
|---|---|---|
| Descrição | Função explícita com argumento de unidade | Operador de subtração entre duas propriedades de data |
| Unidade do resultado | Dias, horas, minutos, etc. | Milissegundos por padrão |
| Lida com datas vazias | Requer wrapper if(empty()) | Retorna erro com datas vazias |
| Suporte a valor absoluto | Envolver com abs() | Envolver com abs() e dividir por 86400000 |
| Legibilidade | Clara e autodocumentada | Mais difícil de ler e manter |
| Melhor caso de uso | Todos os cálculos de diferença de dias | Não recomendado para cálculos de dias |
Para a maioria dos usuários, a função dateBetween é a escolha correta. A subtração direta só faz sentido se você precisar do valor bruto em milissegundos para um cálculo personalizado.
Agora você pode calcular o número exato de dias entre duas datas em seu banco de dados do Notion usando a função dateBetween. Adicione o wrapper if(empty()) para evitar erros em linhas incompletas. Para uso mais avançado, combine dateBetween com formatDate() para exibir o resultado como uma string como “3 dias atrasado”.