Для начала, вы должны поделиться определениями таблиц, потому что тип данных будет влиять на то, как данные должны обрабатываться. Вот пример того, как получить то, что вы просите. Первая часть о том, как вы должны опубликовать пример данных для запроса.
CREATE TABLE #SampleData(
EmployeeName varchar(100),
ShiftDate date,
StartShift datetime,
StartMeal datetime,
EndMeal datetime,
EndShift datetime)
INSERT INTO #SampleData
VALUES( 'TEST, TEST A', '20190424', '20190424 18:48', NULL, NULL, '20190425 03:04'),
( 'TEST, TEST B', '20190425', '20190425 07:00', '20190425 12:59', '20190425 13:57', '20190425 16:03')
SELECT * ,
CONVERT( time, DATEADD( mi, ISNULL( DATEDIFF(mi, StartShift, StartMeal), DATEDIFF(mi, StartShift, EndShift)), 0)),
CONVERT( time, DATEADD( mi, DATEDIFF(mi, StartShift, EndShift)- ISNULL(DATEDIFF(mi, StartMeal, EndMeal), 0), 0))
FROM #SampleData