Вычтите два значения времени в MS SQL Server 2008 - PullRequest
17 голосов
/ 05 октября 2010

Как вычесть два значения времени в SQL Server 2008. Я использую переменные времени в хранимой процедуре.

, пожалуйста, помогите

Ответы [ 3 ]

24 голосов
/ 05 октября 2010

Вы можете использовать DATEDIFF():

SELECT DATEDIFF(Day, startDate, endDate)
  FROM table

SELECT DATEDIFF(Second, date, GETDATE())
  FROM table
4 голосов
/ 29 сентября 2015
DECLARE @END TIME = '16:00:00.0000000' ,    
     @START TIME = '01:00:00.0000000'
     SELECT convert(TIME,dateadd(ms,DateDiff(ss, @START, @END )*1000,0),114)
2 голосов
/ 05 февраля 2016

у меня работает следующее выражение

declare @starttime Time, @endtime Time
set @starttime='18:45'
set @endtime='22:45'
select DATEDIFF(HH,@starttime, @endtime)

выход: 4

...