Суммируйте и конвертируйте время с помощью t-sql - PullRequest
0 голосов
/ 13 февраля 2019

Я пытаюсь суммировать общее время, необходимое для завершения всех дел в течение одного сеанса.Время для каждого случая сохраняется в столбце [время] в секундах.Как его сложить и преобразовать в формат чч: мм: сс?

Мой код выглядит так:

[sessionno] as session_no
,count ([id]) as No_Items
,(convert (varchar, dateadd (ms, (sum([time])) * 1000, 0), 108)) as total_work_time

Результат должен выглядеть следующим образом:

session_no | No_items | total_work_time
112138          8         00:35:12
112583          0         00:00:00
212558          1         00:00:17

Вместо этого я получаю:

session_no | No_items | total_work_time
112138          8         1622
112583          0         null
212558          1         324

1 Ответ

0 голосов
/ 13 февраля 2019

Несколько исправлений вашего SQL

 SELECT [sessionno] as session_no,
        count ([id]) as No_Items,
        dateadd (ss, sum([time]), cast('00:00:00' as time)) as total_work_time
 FROM your_table
 GROUP BY [sessionno]

Однако учтите, что тип данных времени может переполнить .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...