UPDATE YourTableName
SET YourSmallDateTimeColumn = DATEADD(HH, 1, YourSmallDateTimeColumn)
Добавит любое количество часов в ваш столбец.Поэтому, если вы сначала избавитесь от компонента времени:
SELECT CAST(CONVERT(char(8), YourSmallDateTimeColumn, 112) AS smalldatetime)
и добавите к нему компонент часа позже, он должен работать.
С здесь
Чтобы добавить или вычесть часы к значению datetime или smalldatetime, вы будете использовать функцию даты DATEADD.Функция даты DATEADD возвращает новое значение даты и времени на основе добавления интервала к указанной дате.Синтаксис функции даты DATEADD выглядит следующим образом:
DATEADD ( datepart , number, date )
datepart - это параметр, который указывает, в какой части даты возвращать новое значение.В течение нескольких часов вы можете использовать либо ЧАС, либо ЧЧ.число - это значение, используемое для увеличения части даты.date - это выражение, которое возвращает значение datetime или smalldatetime или символьную строку в формате даты.
Вот пример того, как использовать функцию даты DATEADD для увеличения или уменьшения значения datetime на определенное числочасы работы:
SELECT DATEADD(HOUR, -12, GETDATE())AS [TwelveHoursAgo]
SELECT DATEADD(HH, 6, GETDATE()) AS [SixHoursLater]