2016-07-14 4 views
1

Я хотел бы знать, как вы конвертировать минуты, которые> = 60 часов, например от 0,70 до 1:10Как преобразовать десятичные минуты до нескольких часов: минуты в SQL Server

Заранее спасибо.

+0

Возможно, вы имели в виду 70 минут до 1:10? – HGMamaci

+0

Да, это 70 минут, но я получаю их как 0.70 от источника (плохие данные), поэтому я хочу преобразовать их в 1h10. или от 0,60 до 1 часа. – Kay

+1

Значит ли эти входные значения буквально всегда количество минут, деленное на 100, или это ненадлежащим образом сохраненные и обработанные данные? Если это 'hours.minutes' хранится в десятичном типе данных, и вы его обработали (например, добавляя значения вместе), вы должны знать, что несколько входов могут выдавать один и тот же результат, и нет разумного способа исправить данные после обработки произошло. Например. 1 час + 10 минут = '1,0 + 0,1', а результат равен 1,1,« правильное »значение. Но 55 минут + 55 минут = '0,55 + 0,55', а результат - 1,1, неправильное значение. –

ответ

2
DECLARE @hours time = '00:00' 
SELECT DATEADD(minute,70,@hours) 
+0

Но имейте в виду, что это может преобразовывать только положительные значения, которые составляют менее 24 часов (так как 'time' является типом данных для времени суток, а не временными интервалами) –

+0

Хорошая точка @Damien_The_Unbeliever – HGMamaci

Смежные вопросы