Как мы можем вычесть 3 времени перерыва из общего времени с помощью SQL запроса
В моем проекте
StartTimeIn=11: 48 утра
EndTimeOut=4: 18 вечера
MealTimeIn=11: 58 утра
MealTimeOut=12: 15 вечера
TeaTimeIn=1: 06 вечера
Чаепитие=1: 17 вечера
таким образом, TotalSpentTime=270 минут
Время перерыва на обед=17 минут
TeaBReakTime=11 минут
теперь я хочу вычесть (MealBreakTime+TeaBReakTime) из TotalSpentTime
например, 270-(17+11)и сохранить результат в столбце.
Я пошлю свой запрос, надеюсь, кто-нибудь сможет мне помочь.
Если teabreakTime равно null, то все значение будет равно null.Я хочу, чтобы если какое-либо значение разрыва равно нулю, то оно будет приниматься как 0 и идти на дальнейший расчет.
Что я уже пробовал:
SELECT CONVERT(VARCHAR, CreateDateTime,105) AS [LoginDate], CONVERT(varchar(15),CAST(StartTimeIn AS TIME),100) AS [STime], CONVERT(varchar(15),CAST(EndTimeOut AS TIME),100) AS [ETime], CONVERT(varchar(15),CAST(MealTimeIn AS TIME),100) AS [MTime], CONVERT(varchar(15),CAST(MealTimeOut AS TIME),100) AS [MOUT], CONVERT(varchar(15),CAST(TeaTimeIn AS TIME),100) AS [TTime], CONVERT(varchar(15),CAST(TeaTimeOut AS TIME),100) AS [TOUT], DATEDIFF(minute,MealTimeIn,MealTimeOut) AS [MealBreak], DATEDIFF(minute,TeaTimeIn,TeaTimeOut) AS [TeaBreak], DATEDIFF(minute,StartTimeIn,EndTimeOut) AS [TimeSpent] FROM DailyTimeRecord