Это, вероятно, тривиально для ежедневного гуру базы данных ... Я не в этой роли.Так что .. помощь будет принята.
У меня есть система, которая фиксирует дату создания и завершения для элементов (назовите их задачами).Я хочу знать, какие задачи выполняются дольше всего, и, как правило, среднее время завершения.
Идеальный результат:
Task Name | Average Completion Time
----------------------------------------------------
Таблицы:
• Таблица задач • Таблица контрольных списков(набор задач) o Контрольный список содержит дату создания (когда также создаются все задачи внутри) • Экземпляр задачи (ссылка на задачу) o Экземпляр содержит дату завершения
Я могу получить DATEDIFF (days, checklist.created,taskinstance.completed) фильтрация завершенных экземпляров задач.
Мои результаты выглядят примерно так:
Task 1 | 3 days
Task 1 | 10 days
Task 1 | 5 days
Task 2 | 2 days
Task 2 | 12 days
select t.[Description], ci.CreatedDateTime, cit.CompletedDateTime, DATEDIFF(day, ci.CreatedDateTime, cit.CompletedDateTime) as 'Days'
from checklistinstancetask cit
join checklistinstance ci on ci.Id = cit.ChecklistInstanceId
join Task t on t.Id = cit.TaskId
where cit.IsActive <> 0
order by 'Days' desc
Я хочу объединить задачу и получить среднее значение за дни, о которых я сообщилобратно из DATEDIFF, поэтому он должен дать мне:
Задание 1 |6 дней Задание 2 |7 дней
Любая помощь по этому запросу будет потрясающе ..