SQL Agrupar por / Contagem: Contar os mesmos valores em várias colunas?
Estou tentando descobrir como escrever uma consulta que conte valores em várias colunas, com a tabela de resultados tendo uma contagem em cada coluna para cada valor possível dequalque column.
Exemplo: Digamos que eu tenhominha mes
Source data table:
P1 P2 P3
-----------
a b a
a a a
b b b
a b b
Eu quero uma consulta que conte a e b em cada coluna, produzindo algo como:
Desired query output:
P1 P2 P3
-------------
a | 3 1 2
b | 1 3 2
Sei que posso fazer isso facilmente para uma única coluna com umgroup by:
select P1, count(*) as mycounts
from mytable
group by P1
Mas é possível fazer isso paracad coluna?
Estou usando o SQL Server 2008 (T-SQL). Agradecemos antecipadamente por qualquer ajuda