Получение «нулевых» значений для агрегирования данных - PullRequest
0 голосов
/ 27 мая 2019

Я пишу запрос и получаю значение

Я пробовал это на SQL Server 2012

;With CTE_ColorIndicator
AS
(
    select Name,Value,Report_Date,
    Dense_Rank() Over(Order by Report_Date DESC)Dno,
    (AVG(value)+(3*STDEV(value))) UpperLimit,
    (AVG(value)+(3*STDEV(value)))*0.85 Limit 
    from #Temp1 
    group by Name,value,Report_date
)

Select * 
from CTE_ColorIndicator 
where Dno <=90 and Dno > 7

«Я ожидал агрегированные значения вместо столбцов верхнего и предельного столбцов» «Но выходные данные показывают значения NULL в верхнем и нижнем столбцах»

1 Ответ

0 голосов
/ 27 мая 2019

Вы группируете по value.Следовательно, стандартное отклонение не определено.Я думаю, что вы хотите, чтобы подзапрос был:

select Name, Report_Date,
       Dense_Rank() Over (Order by Report_Date DESC) as Dno,
       (AVG(value) + 3 * STDEV(value)) as UpperLimit,
       (AVG(value) + 3 * STDEV(value)) * 0.85 as Limit 
from #Temp1 
group by Name, Report_date
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...