2009-04-16 10 views

Répondre

1

Comment utiliser la fonction dateDiff?

par exemple

DECLARE @Dt INT 
SET @Dt = DATEDIFF(dd,@StartDate,@EndDate) 

devrait faire l'affaire?

Ou ai-je raté quelque chose?

12

fonction DateDiff doit faire ce que vous avez besoin

declare @var1 Datetime 
declare @var2 Datetime 

set @var1 = '2009-04-01' 
set @var2 = '2009-04-16' 

SELECT datediff(day,@var1, @var2) 
+0

@ var1, @ var2 = mauvais noms :) lol –

+1

... ouais j'ai été mordu par le "jeter code-échantillons ensemble, rapidement et-uglily-for-Stackoverflow" bug; -) –

1
USE tempdb 

DECLARE @DATE1 datetime 

DECLARE @DATE2 datetime 

SET @DATE1 = '01/01/2000' 

SET @DATE2 = '02/01/2000' 

SELECT DATEDIFF(day, @DATE1, @DATE2) 
0

DATEDIFF est la façon de le faire

0

Notez que DATEDIFF ne concerne que lui-même avec la partie date. Si les temps sont impliqués, une soustraction convertie pourrait donner de meilleurs résultats.

DECLARE @start DATETIME 
DECLARE @end DATETIME 
SET @start = '20090514 00:00:00' 
SET @end = '20090514 23:59:59' 
PRINT CONVERT(FLOAT, (@[email protected])) -- 0.999988 
PRINT DATEDIFF(DAY,@start,@end)  -- 0 
Questions connexes