Pages

23 de dez. de 2010

[SQL Server] Somando diferença de datas (parte 2)

Descobri recentemente, através do colega Lew Sagadilha, que já existe uma função no SQL Server que específica para fazer esse tipo de tratamento. O nome da função é Datediff, ela é responsável por retornar a contagem (inteiro assinalado) dos limites especificados de datepart cruzados entre a startdate especificada e a enddate.

Sintaxe:
DATEDIFF ( datepart , startdate , enddate )

Exemplo:
CREATE TABLE dbo.Duration
    (
    startDate datetime2
    ,endDate datetime2
    )
INSERT INTO dbo.Duration(startDate,endDate)
    VALUES('2007-05-06 12:10:09','2007-05-07 12:10:09')
SELECT DATEDIFF(day,startDate,endDate) AS 'Duration'
FROM dbo.Duration;
-- Returns: 1


Para informações detalhadas, consulte o site:  http://msdn.microsoft.com

Nenhum comentário: