2010-10-05 3 views

ответ

23

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

SELECT DATEDIFF(Day, startDate, endDate) 
    FROM table 

SELECT DATEDIFF(Second, date, GETDATE()) 
    FROM table 
+1

для использования DATEDIFF() varible должно быть в datetime? –

+0

@Vyas Какой у вас тип данных? – NullUserException

+1

Тип данных: 'time' –

4
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

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

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

выход: 4