Q:

TSQL Question: Group by on multiple columns

I have a table with multiple columns that represent occurrences of an action.  
simpleTableExample
id  type $$$$$ value1 value2 value3 ... value15
--  ----  --   -----  -----  -----      -----
1    "I"   1    "a"    "b"    ""         ""
2    "O"   1    "a"    "d"    "f"        "z"
3    "I"   1    "d"    "b"    ""         ""
4    "O"   1    "g"    "l"    ""         ""
5    "I"   1    "z"    "g"    "a"         ""
6    "I"   1    "z"    "g"    "a"         "a"

not really sure how to represent the data, but the above should show it... Per row, I have multiple columns that I want to group by.  Focusing on the "a" part, I'd like the output such that :
Type     Value    Count  Sum
-----    -----    -----  ---
"I"      "A"      "3"     3
"O"      "A"      "2"     1

Just not sure how to go about, or even the best way, to group by with multiple columns.  If it was a "tall" table with a sequence number, it'd be a snap... 
One thing I'm worried about... is if I have the same value in multiple rows (they have the same action done multiple times), and I stack the columns and try to sum rows.  So for example row 6 has 3 and 15 with value of a, and I try to Sum() the totals of that group, I don't want 6 counted twice (shown above
Edit: 
Trying to clarify here... I have a row of customers with "actions".  The actions are collapsed into value1 thru value15.  I want to get a count of "type, value" groups. 
The count I had earlier was wrong... I want the distinct customers that have had a certain action, not the number of certain actions.  So I-A should be a count of 4, using the above visible table. 
Final NoteCode Review question for what I came up with.  Unpivot to build a list of unique date/value pairs. 

A:

Assuming SQL 2005 or greater you can use UNPIVOT and then do your GROUP BYs and COUNTs

