[Webinar] Streamline your web hosting managementRegister Today

x
?
Solved

How can  I sum a column as an expression?

Posted on 2010-11-15
4
Medium Priority
?
962 Views
Last Modified: 2012-05-10
In my VarChar Column,  'ZZ',  I have 3  possibilities with a total of 134 rows :

Possibilities
1.  aaaa
2.  bbbb
3.  cccc

I need to create a table to show a total of each of these possibilities that are listed.

Example:
aaaa    bbbb    cccc
 53         47        34        TOTAL
`
Please provide an expression that I can use to obtain each of  the 3  totals.
0
Comment
Question by:rhservan
  • 2
4 Comments
 
LVL 13

Expert Comment

by:sameer2010
ID: 34141798
Try this
select 
sum(case when possibility = 'aaa' then 1 else 0 end) possaaa,
sum(case when possibility = 'bbb' then 1 else 0 end) possbbb,
sum(case when possibility = 'ccc' then 1 else 0 end) possccc,
sum(case when possibility = 'aaa' then 1 else 0 end) + sum(case when possibility = 'bbb' then 1 else 0 end) + sum(case when possibility = 'ccc' then 1 else 0 end) posstotal
from your_table

Open in new window

0
 

Author Comment

by:rhservan
ID: 34142232
Sameer,

There seems to be some missing information on line five at the end.
0
 
LVL 21

Assisted Solution

by:Alfred A.
Alfred A. earned 1000 total points
ID: 34142304
Try something like this.
SELECT *
FROM (
SELECT (CASE ZZ
           WHEN 'aaaa' THEN 'aaaa'
           WHEN 'bbbb' THEN 'bbbb'
           WHEN 'cccc' THEN 'cccc'
        END) As [Poss],
        (COUNT((CASE ZZ
           WHEN 'aaaa' THEN 'aaaa'
           WHEN 'bbbb' THEN 'bbbb'
           WHEN 'cccc' THEN 'cccc'
        END)) As [SubTotal]
FROM YOURTABLE
GROUP BY ZZ
) TableZZ
PIVOT (
SUM(SubTotal)
FOR [Poss] IN (
[aaaa],[bbbb],[cccc]
)
) PivotTable

Open in new window

0
 
LVL 13

Accepted Solution

by:
sameer2010 earned 1000 total points
ID: 34160681
Are you getting any error? What is the error you are getting?
The first 4 lines select the count of non-blank possiblities and 5th row calculates the sum for all non-blank rows. If you do not need total for all possibilities, you can drop that row. So, the query would become
select 
sum(case when possibility = 'aaa' then 1 else 0 end) possaaa,
sum(case when possibility = 'bbb' then 1 else 0 end) possbbb,
sum(case when possibility = 'ccc' then 1 else 0 end) possccc
from your_table

Open in new window

0

Featured Post

Receive 1:1 tech help

Solve your biggest tech problems alongside global tech experts with 1:1 help.

Question has a verified solution.

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

In this short article I will be talking about two functions in the SQL Server Reporting Services (SSRS) function stack.  Those functions are IIF() and Switch().  And I'll be showing you how easy it is to add an Else part to the Switch function. T…
Hi, I have heard from my friends that it’s not possible to create Label Printing report using SSRS. I am amazed after hearing this words not possible in SSRS. I googled lot and found that it is possible to some of people know about the Report Bui…
How to fix display issue, screen flickering issue when I plug in power cord to the machine. Before I start explaining the solution lets check out once the issue how it looks like after I connect the power cord. most of you also have faced this…
SQL Database Recovery Software repairs the MDF & NDF Files, corrupted due to hardware related issues or software related errors. Provides preview of recovered database objects and allows saving in either MSSQL, CSV, HTML or XLS format. Ensures recov…

591 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