DreamingEagle
asked on
Doing DateTime Math with SQL Server
I am converting an app from MS Access 2000 to use a VB front end with SQL Server as the database.
I have two datetime fields ORDEROn and ORDEROff. When I subtract ORDEROn from ORDEROff in a SQL statement in MS Access I get the number of hours in decimal format. But SQL Server returns 1901-01-01 00:00:0.000 no mater what the values are in the two DateTime fields.
How can I make SQL Server return the number of hours and minutes of difference between these two fields?
I have two datetime fields ORDEROn and ORDEROff. When I subtract ORDEROn from ORDEROff in a SQL statement in MS Access I get the number of hours in decimal format. But SQL Server returns 1901-01-01 00:00:0.000 no mater what the values are in the two DateTime fields.
How can I make SQL Server return the number of hours and minutes of difference between these two fields?
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
If you want hours and minutes as decimal, you could just do
DATEDIFF(minute, ORDEROn, ORDEROff) /60
Will
DATEDIFF(minute, ORDEROn, ORDEROff) /60
Will
ASKER
DateDiff(hour,[OrderON],[O rderOFF]) worked perfectly. Thanks...
DECLARE @hrsDiff DECIMAL(4,2)
SET @hrsDiff = DATEDIFF(hour, ORDEROn, ORDEROff) +
CAST(CAST(DATEDIFF(minute,
That's ugly, I know, but AFAIK there's not an easier way to do it.