Click here to Skip to main content
15,885,546 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
I have Data like this in sql

CAT     val_1    val_2  val_3
-----------------------------
ALL	 2.00	1.00	3.00
ALL 	5.00	0.00	0.00
DS1	 0.00	0.00	0.00
DS2	 3.00	4.00	1.00
DS3	 0.00	0.00	0.00
IAS1	 4.00	1.00	6.00
IAS2	1.00	1.00	0.00
KJ	2.00	2.00	8.00
LTIS1 	7.00	3.00	7.00
LTIS2	 2.00	2.00	2.00
NDS1	 2.00	2.00	0.00
NDS2 	1.00	2.00	2.00
NDS3	9.00	9.00	0.00

i want its sum like this..

CAT     val_1    val_2  val_3
-----------------------------
AL	7.00	1.00	3.00
DS	3.00	4.00	1.00
IA	5.00	2.00	6.00
KJ	2.00	2.00	8.00
LT	9.00	5.00	9.00
ND	12.00	13.00	2.00


please see column name difference....

thanks..
Posted
Updated 20-Sep-13 2:57am
v2

1 solution

Try this:
SQL
SELECT CAT, SUM(VAL_1) AS VAL_1, SUM(VAL_2) AS VAL_2, SUM(VAL_3) AS VAL_3
FROM TAbleName
GROUP BY CAT


If you would like to get only 2 first letters/chars from Cat, use this:
SQL
SELECT LEFT(CAT,2) AS CAT, SUM(VAL_1) AS VAL_1, SUM(VAL_2) AS VAL_2, SUM(VAL_3) AS VAL_3
FROM TAbleName
GROUP BY LEFT(CAT,2)
 
Share this answer
 
v2
Comments
krrazyumesh 20-Sep-13 9:06am    
Thanks a lot Maciej Los..
Maciej Los 20-Sep-13 9:18am    
You're welcome ;)
Sandesh M Patil 20-Sep-13 9:12am    
good one
Maciej Los 20-Sep-13 9:19am    
Thank you ;)
Raja Sekhar S 21-Sep-13 1:07am    
Nice one ...+5!

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900