Я запрашиваю таблицу, в которой, по сути, куча дат.
FRECDCUST DTRECDCUST DTINSPECTED DTRECDCUSTPO DTADDEDSO DTSHIPPEDSUP DTQUOTEDCUST
1/1/1900 12:00:00 AM 7/27/2010 12:00:00 AM 7/30/2010 12:00:00 AM 7/26/2010 12:00:00 AM 8/6/2010 12:00:00 AM 1/1/1900 12:00:00 AM 8/6/2010 12:00:00 AM
1/1/1900 12:00:00 AM 7/27/2010 12:00:00 AM 7/30/2010 12:00:00 AM 7/26/2010 12:00:00 AM 8/6/2010 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM
1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM
1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM
1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM 1/1/1900 12:00:00 AM
1/1/1900 12:00:00 AM 3/12/2010 12:00:00 AM 3/15/2010 12:00:00 AM 3/11/2010 12:00:00 AM 3/16/2010 12:00:00 AM 3/24/2010 12:00:00 AM 4/13/2010 12:00:00 AM
1/1/1900 12:00:00 AM 11/6/2009 12:00:00 AM 11/6/2009 12:00:00 AM 11/3/2009 12:00:00 AM 11/9/2009 12:00:00 AM 11/20/2009 12:00:00 AM 12/7/2009 12:00:00 AM
Я принимаю разницу между двумя датами в каждой строке. Например, дни для проверки можно найти так:
SELECT (CASE
WHEN year(SYC_ext.DTRECDCUST) <> 1900
AND year(SYC_ext.DTINSPECTED) <> 1900
THEN
DATEDIFF(dd, SYC_ext.DTRECDCUST, SYC_ext.DTINSPECTED)
ELSE
NULL
END)
AS [AverageDaystoInspect]
Blah blah...
Это создает ряд различных вычислений DateDiff, которые в итоге выглядят так:
Product Class Average Days to Inspect Average Days to Process SO Average Days to Ship to Affiliate Average Days to Quote Average Days to Receive Ammended PO
01 2 4 8 27 21
01 2 4 8 27 21
01 3 5 2 88 8
01 3 5 2 88 8
01 1 8 11 72 1
01 3 2 7 27 0
01 5 2 7 27 0
Пожалуйста, прости проблемы с расстоянием.
Итак, каждая из этих строк в наборе данных начинается с числа, которое представляет категорию продукта в данном случае 01, и сопровождается серией дневных вычислений.
Я могу усреднить эти значения и дать вам среднее значение для каждой категории для класса продукта. Тем не менее, они хотят, чтобы расчеты дня проводились вдоль левой части таблицы или матрицы с классами продуктов вдоль вершины, в точности противоположно тому, что у меня здесь. Если я поворачиваю их в Excel, я получаю следующее:
01 05 10
Avg Days to Inspect 5 3 5
Avg Days to Process PO 4 5 5
Avg Days to Ship 20 18 19
Надеюсь, это имеет смысл. Любая идея, как я могу выполнить это в SSRS или T-SQL?