Я недавно начал с SQL, поэтому я все еще учусь, это также мой первый вопрос, поэтому заранее извините.
У меня есть таблица, Messages_History
с тремя столбцами tmStartTime
, tmEndTime
и tmTotal
, все типы данных DATETIME2
.
tmStartTime tmEndTime
2018-12-18 13:38:02.054 2018-12-18 13:39:56.944
2018-12-18 13:20:06.927 2018-12-18 13:42:02.024
2018-12-18 13:10:51.450 2018-12-18 13:36:34.239
2018-12-18 13:09:54.005 2018-12-18 13:19:46.741
2018-12-18 13:05:40.865 2018-12-18 13:36:48.373
2018-12-18 13:04:05.028 2018-12-18 13:08:12.073
Это может быть длиной более 10 000 строк.
Я хочу вычислить разницу между столбцами tmStartTime
и tmEndTime
в day hh:mm:ss.xxx
Как я могу это сделать?
Я использовал DATEDIFF(datepart, tmStartTime, tmEndTime) name,
, чтобы отдельно вычислить даты и показать их в таблице.Но как мне объединить их в одном столбце и обновить столбец tmTotal
этими значениями?
UPDATE Messages_History
SET tmTotals = DATEDIFF (second, tmStartTime, tmEndTime); <--- this was to try updating a column with only seconds datepart.
SELECT
MH.nId,
MH.tmStartTime StartTime,
MH.tmEndTime EndTime,
MH.tmTotal Total,
MH.tmTotals Totals,
FROM Messages_History MH
Как объединить DATEDIFF
, чтобы я мог обновить столбец таблицы Column_Total
?