between

Diferença de calendário entre dois valores datetime, como calendarDuration.

Categoria: Language Fundamentals > Data Types

Sintaxe

dt = between(t1, t2)

Retorna a duração de calendário que, somada a t1, resulta em t2, em anos, meses e dias (e horário quando necessário).

dt = between(t1, t2, components)

Restringe o resultado aos componentes indicados, como 'days' ou 'months'.

Descrição

Diferente da subtração simples, que dá uma duration de tamanho fixo em horas, between conta primeiro unidades inteiras de calendário: anos, depois meses, depois dias. O resultado depende das datas, pois os meses têm durações diferentes, de modo que t1 + between(t1, t2) reproduz t2.

Se t2 for anterior a t1, os componentes são negativos.

Argumentos de entrada

t1, t2
Arrays datetime do mesmo tamanho, ou um deles escalar.
components
Texto com as unidades a usar: 'years', 'quarters', 'months', 'weeks', 'days' ou 'time', ou um cell array delas.

Argumentos de saída

dt
Array calendarDuration com o mesmo tamanho das entradas.

Exemplo

Entre duas datas

t1 = datetime(2020,1,15);
t2 = datetime(2021,3,20);
between(t1, t2)
Saída
ans = calendarDuration
   1y 2mo 5d

Observações

No MatLivre, 'days' dá uma contagem pura de dias, mas 'months' ainda divide o resultado em anos, meses e dias em vez de uma única contagem de meses.

Veja também

caldiff datetime calendarDuration days dateshift