user42348
user42348

Reputation: 4319

To get difference between 2 dates

I have 2 dates. I want to get number of days between 2 dates in storedprocedure.

Upvotes: 1

Views: 388

Answers (5)

Hafthor
Hafthor

Reputation: 16896

Note that DATEDIFF only concerns itself with the date portion. If times are involved, a converted subtraction might yield better results.

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

Upvotes: 0

Conai
Conai

Reputation:

DATEDIFF is the way to do it

Upvotes: 0

j3r03nq
j3r03nq

Reputation: 196

USE tempdb

DECLARE @DATE1 datetime

DECLARE @DATE2 datetime

SET @DATE1 = '01/01/2000'

SET @DATE2 = '02/01/2000'

SELECT DATEDIFF(day, @DATE1, @DATE2)

Upvotes: 1

no_one
no_one

Reputation: 1850

How about using the dateDiff function ?

eg

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

should do the trick ?

Or did I miss something ?

Upvotes: 1

Eoin Campbell
Eoin Campbell

Reputation: 44268

DateDiff function should do what you need

declare @var1 Datetime
declare @var2 Datetime

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

SELECT datediff(day,@var1, @var2 )

Upvotes: 12

Related Questions