Solved

STDEVP in SQL

Posted on 2016-10-24
2
79 Views
Last Modified: 2016-10-27
I have data that is arranged this way (see below) and need to calculate the Dispersion = Standard Deviation/Average of Total_NR rolled up by the MGR_NAME. How can I achieve this in T-SQL? Thank you.

The way it's supposed to work is: Sum (Total_NR) divided by the average of the sum of NR which we should then so a STDEVP on that average.

MGR_NAME      EMPL      HC      Total_NR           Avrg             Dispersion?
JOSE PH        1027         1           $3,974.00          0.000107      
JOSE PH      1233      1           $3,324.00          0.000074      
JOSE PH      1354      1         $51.87                  0.000012      
JOSE PH      1375      1      $2,302.67          0.000049      
JOSE PH      1486      1      $1,230.68          0.000045
0
Comment
Question by:saved4use
  • 2
2 Comments
 
LVL 28

Expert Comment

by:Pawan Kumar
ID: 41857935
can you pls post the expected output for Dispersion column?
0
 
LVL 28

Accepted Solution

by:
Pawan Kumar earned 500 total points
ID: 41857941
Try..

SELECT stdddv.*,AVG(Avrg) OVER (PARTITION BY MGR_NAME) AvgByManagerName , ny StandardDeviation, ny1  StandardDeviation2 ,
ny/AVG(Avrg) OVER (PARTITION BY MGR_NAME) Dispersion1, ny1/AVG(Avrg) OVER (PARTITION BY MGR_NAME) Dispersion2 FROM stdddv
CROSS APPLY
(
	SELECT STDEV(Total_NR) ny , STDEVP(Total_NR) ny1
	FROM stdddv 
)b

Open in new window


OR....

SELECT stdddv.*,AVG(Avrg) OVER (PARTITION BY MGR_NAME) AvgByManagerName , STDEVP(Total_NR) OVER(PARTITION BY MGR_NAME) StandardDeviation, STDEV(Total_NR) OVER(PARTITION BY MGR_NAME)  StandardDeviation2 ,
STDEVP(Total_NR) OVER(PARTITION BY MGR_NAME)/AVG(Avrg) OVER (PARTITION BY MGR_NAME) Dispersion1, STDEV(Total_NR) OVER(PARTITION BY MGR_NAME) /AVG(Avrg) OVER (PARTITION BY MGR_NAME) Dispersion2 
FROM stdddv

Open in new window

0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

If you have heard of RFC822 date formats, they can be quite a challenge in SQL Server. RFC822 is an Internet standard format for email message headers, including all dates within those headers. The RFC822 protocols are available in detail at:   ht…
Use this article to create a batch file to backup a Microsoft SQL Server database to a Windows folder.  The folder can be on the local hard drive or on a network share.  This batch file will query the SQL server to get the current date & time and wi…
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

829 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question