Método de cálculo de adição e subtração de dados em formato de data ASP
ASP nos fornece funções especiais de adição e subtração de datas.
1. Adicione datas
Função DataAdicionar
Retorna a data à qual o intervalo de tempo especificado foi adicionado.
DateAdd(intervalo, número, data)
A sintaxe da função DateAdd possui os seguintes parâmetros
(1) intervalo é necessário. Uma expressão de string que representa o intervalo de tempo a ser adicionado. Consulte a seção Configurações para valores.
(2) o número é obrigatório. Expressão numérica que indica o número de intervalos de tempo a serem adicionados. As expressões numéricas podem ser positivas (obtendo uma data no futuro) ou negativas (obtendo uma data no passado).
(3) a data é obrigatória. Variante ou texto que representa a data à qual o intervalo deve ser adicionado.
ilustrar
Você pode usar a função DateAdd para adicionar ou subtrair um intervalo de tempo especificado de uma data. Por exemplo, você pode usar DateAdd para calcular uma data daqui a 30 dias ou um horário daqui a 45 minutos. Para adicionar um intervalo de tempo em dias até a data, você pode usar dias do ano (y), dias (d) ou dias da semana (w).
A função DateAdd não retorna datas inválidas. O exemplo a seguir adiciona um mês a 31 de janeiro de 1995:
NovaData = DataAdicionar(m, 1, 31 de janeiro de 95)
Neste exemplo, DateAdd retorna 28 de fevereiro de 1995, e não 31 de fevereiro de 1995. Se a data for 31 de janeiro de 1996, será retornado 29 de fevereiro de 1996 porque 1996 é um ano bissexto.
Se a data calculada for anterior a 100 DC, ocorrerá um erro.
Se o número não for um valor longo, ele será arredondado para o número inteiro mais próximo antes do cálculo.
2. Subtração de data
Função DataDiff
Retorna o intervalo de tempo entre duas datas.
DataDiff(intervalo, data1, data2 [, primeiro dia da semana [, primeira semana do ano]])
A sintaxe da função DateDiff possui os seguintes parâmetros:
(1) intervalo é necessário. Uma expressão de string usada para calcular o intervalo de tempo entre data1 e data2. Consulte a seção Configurações para valores.
(2) data1, data2 são obrigatórias. Expressão de data. Duas datas usadas para cálculo.
(3) Primeiro dia da semana opcional. Uma constante que especifica o primeiro dia da semana. Se não for especificado, o padrão será domingo. Consulte a seção Configurações para valores.
(4) Primeira semana do ano opcional. Constante que especifica a primeira semana do ano. Se não for especificado, o padrão será a semana de 1º de janeiro. Consulte a seção Configurações para valores.
ilustrar
A função DateDiff é usada para determinar o número de intervalos de tempo especificados que existem entre duas datas. Por exemplo, você pode usar DateDiff para calcular o número de dias entre duas datas ou o número de semanas entre hoje e o último dia do ano.
Para calcular o número de dias entre a data1 e a data2, você pode usar o número de dias em um ano (y) ou dias (d). Quando intervalo é o número de dias da semana (w), DateDiff retorna o número de semanas entre duas datas. Se data1 for segunda-feira, DateDiff contará o número de segundas-feiras antes de data2. Este resultado contém data2, mas não data1. Se o intervalo for semanas (ww), a função DateDiff retornará o número de semanas entre duas datas na tabela de calendário. A função conta o número de domingos entre data1 e data2. DateDiff avaliará date2 se date2 for domingo, mas não date1 mesmo se date1 for domingo.
Se a data1 for posterior à data2, a função DateDiff retornará um número negativo.
O parâmetro firstdayofweek afeta cálculos usando símbolos separadores w e ww.
Se data1 ou data2 for uma data literal, o ano especificado se tornará uma parte fixa da data. Mas se data1 ou data2 estiver entre aspas ( ) e o ano for omitido, o ano atual será inserido sempre que a expressão data1 ou data2 for avaliada no código. Isso torna possível escrever código de programa que funcione em anos diferentes.
Quando o intervalo for ano (aaaa), compare 31 de dezembro com 1º de janeiro do ano seguinte. Embora a diferença seja, na verdade, apenas um dia, DateDiff retorna 1, indicando uma diferença de ano.