Solved

calculated percentage data always retruning zero

Posted on 2006-07-13
2
320 Views
Last Modified: 2008-03-17
I'm trying to use T-SQL to return the relative percentage of two summed values when I divide the values into each other, but I always get 0. Here is my stored proc
CREATE PROCEDURE dbo.SC_PMPULL

(
      @startdate datetime,
      @enddate datetime
)
AS
BEGIN

SELECT underwrtr,COUNT (received)as received,count(denied)as denied,fullname
 
INTO #tmpPull
FROM dbo.TestPull
WHERE received BETWEEN @startDate and @enddate and received is not null
GROUP BY underwrtr,fullname, denied,received
Select P.fullname, coalesce(sum(P.received), ' ')as [U/W Received],coalesce(sum (P.denied) ,' ')as [U/W Denied] , P.underwrtr,(sum(P.denied) /sum(P.received) )as PercentageDenied--,P.month,P.year,P.monthvol
   From #tmpPull  P
     Group by P.fullname,P.underwrtr
drop table #tmpPull


END

0
Comment
Question by:jemigossaye
2 Comments
 
LVL 11

Assisted Solution

by:pootle_flump
pootle_flump earned 200 total points
ID: 17103481
Hi

Your values are Ints - you need to cast them as DECIMAL (or NUMERIC) e.g.:

CAST((sum(P.denied) AS NUMERIC, 4, 3) /sum(P.received) )as PercentageDenied


0
 
LVL 142

Accepted Solution

by:
Guy Hengel [angelIII / a3] earned 300 total points
ID: 17103486
CREATE PROCEDURE dbo.SC_PMPULL

(
     @startdate datetime,
     @enddate datetime
)
AS
BEGIN

SELECT underwrtr,COUNT (received)as received,count(denied)as denied,fullname
 
INTO #tmpPull
FROM dbo.TestPull
WHERE received BETWEEN @startDate and @enddate and received is not null
GROUP BY underwrtr,fullname, denied,received
Select P.fullname, coalesce(sum(P.received), ' ')as [U/W Received],coalesce(sum (P.denied) ,' ')as [U/W Denied] , P.underwrtr,(cast(sum(P.denied)  as decimal(20,4)) / cast(sum(P.received)  as decimal(20,4)) )as PercentageDenied--,P.month,P.year,P.monthvol
   From #tmpPull  P
     Group by P.fullname,P.underwrtr
drop table #tmpPull
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Move SQL 2005 Express to Server 2012R2 19 125
Pivot not using aggregate yield error 3 53
Session that filled up my transaction logs 1 54
Exchange 2016 Databse move 5 54
APEX (Application Express) is used to develop a web application from Oracle. SQL Workshop is one of the tools that comes with Oracle APEX to query or modify the database objects or to make any changes to the structure.
These days, all we hear about hacktivists took down so and so websites and retrieved thousands of user’s data. One of the techniques to get unauthorized access to database is by performing SQL injection. This article is quite lengthy which gives bas…
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

813 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

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now