Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как получить разницу между двумя столбцами time после их суммирования? / 5 сообщений из 5, страница 1 из 1
28.05.2019, 11:50
    #39819183
Hopfen_Artur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить разницу между двумя столбцами time после их суммирования?
Добрый день, есть такие два столбца:

norm endOperationNULL 00:50:00.000000002:11:00.0000000 01:20:00.000000000:46:00.0000000 00:50:00.000000000:36:00.0000000 00:50:00.000000000:46:00.0000000 00:50:00.000000001:41:00.0000000 01:20:00.0000000NULL 00:20:00.0000000NULL 00:20:00.0000000NULL 00:50:00.0000000

Суммируем:

Код: sql
1.
2.
3.
SELECT 
   CONVERT(TIME, DATEADD(s, SUM(( DATEPART(hh, norm) * 3600 ) + ( DATEPART(mi, norm) * 60 ) + DATEPART(ss, norm)), 0)) AS time1
   ,CONVERT(TIME, DATEADD(s, SUM(( DATEPART(hh, endOperation) * 3600 ) + ( DATEPART(mi, endOperation) * 60 ) + DATEPART(ss, endOperation)), 0)) AS time2



получаем строку:

time1 time206:00:00.0000000 07:30:00.0000000

Теперь нужно добавить третий столбец с разницей.
Не получается получить разницу из двух созданных time1 и time2. Ругается на то что не знает что это за столбцы. =(

Результат хотелось бы таким:

time1 time2 differ06:00:00.0000000 07:30:00.0000000 -01:30:00.00000000

Подскажите пожалуйста как это сделать.
...
Рейтинг: 0 / 0
28.05.2019, 11:53
    #39819185
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить разницу между двумя столбцами time после их суммирования?
Hopfen_Artur,

или переписать весь расчёт ещё и в DATEDIFF или вынести CTE
...
Рейтинг: 0 / 0
28.05.2019, 12:16
    #39819208
fkthat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить разницу между двумя столбцами time после их суммирования?
Код: sql
1.
2.
3.
4.
5.
select sum(
    convert(float, convert(datetime, endOperation)) -
    convert(float, convert(datetime, norm))
) 
  from ...
...
Рейтинг: 0 / 0
28.05.2019, 12:41
    #39819238
invm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить разницу между двумя столбцами time после их суммирования?
Hopfen_ArturРезультат хотелось бы таким:

time1 time2 differ06:00:00.0000000 07:30:00.0000000 -01:30:00.00000000Тип time не допускает отрицательных значений.
...
Рейтинг: 0 / 0
28.05.2019, 13:00
    #39819257
Hopfen_Artur
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить разницу между двумя столбцами time после их суммирования?
Всем спасибо, буду все sql тогда пересчитывать.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как получить разницу между двумя столбцами time после их суммирования? / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]