# Agrupamento

• ### Pergunta

• Olá,

Galera, estou com mais um certo probleminha e não sei como resolver.

Não estou conseguindo agrupar algumas colunas, abaixo segue o resultado dela:

O que retorna:

| ANO | FABRICANTE | JAN | FEV | MAR
|2006  | SUZUKI              | 0       | 0       | 10
|2006  | SUZUKI              | 0       | 3       | 0
|2006  | SUZUKI              | 1       | 0       | 0

Como eu gostaria que retornasse:

| ANO | FABRICANTE | JAN | FEV | MAR
|2006  | SUZUKI              | 1       | 3       | 10

Mais uma vez quero agradecer a todos.

SELECT
1
AS VEEM_PRIORIDADE, VEEM_IX_ANO, NULL AS MAMO_MARCA, (SELECT COUNT(VEEM_PK_ID) AS VEEM_TOTAL FROM VEICULOS_EMPLACADOS AS VEEM_2 INNER JOIN MARCA_MODELO ON VEEM_FK_MAMO_ID = MAMO_PK_ID WHERE VEEM_1.VEEM_IX_ANO = VEEM_2.VEEM_IX_ANO) AS VEEM_TOTAL,
ISNULL(CASE WHEN VEEM_IX_MES = 1 THEN COUNT(VEEM_IX_ANO) END, 0) AS [Jan] ,
ISNULL
(CASE WHEN VEEM_IX_MES = 2 THEN COUNT(VEEM_IX_ANO) END, 0) AS [Fev] , ISNULL(CASE WHEN VEEM_IX_MES = 3 THEN COUNT(VEEM_IX_ANO) END, 0) AS [Mar]
FROM
AS VEEM_1 INNER JOIN MARCA_MODELO ON VEEM_FK_MAMO_ID = MAMO_PK_ID
WHERE
((( VEEM_IX_ANO = 2006)) AND ((VEEM_IX_MES = 1) OR (VEEM_IX_MES = 2) OR (VEEM_IX_MES = 3)))
GROUP BY
VEEM_IX_ANO
, VEEM_IX_MES

UNION

SELECT

2
AS VEEM_PRIORIDADE, VEEM_IX_ANO, MAMO_MARCA, (SELECT COUNT(VEEM_PK_ID) AS VEEM_TOTAL FROM VEICULOS_EMPLACADOS AS VEEM_2 INNER JOIN MARCA_MODELO AS MAMO_2 ON VEEM_FK_MAMO_ID = MAMO_PK_ID WHERE VEEM_1.VEEM_IX_ANO = VEEM_2.VEEM_IX_ANO AND MAMO_1.MAMO_MARCA = MAMO_2.MAMO_MARCA) AS VEEM_TOTAL,
ISNULL(CASE WHEN VEEM_IX_MES = 1 THEN COUNT(VEEM_IX_ANO) END, 0) AS [Jan] , ISNULL(CASE WHEN VEEM_IX_MES = 2 THEN COUNT(VEEM_IX_ANO) END, 0) AS [Fev] , ISNULL(CASE WHEN VEEM_IX_MES = 3 THEN COUNT(VEEM_IX_ANO) END, 0) AS [Mar]
FROM
AS VEEM_1 INNER JOIN MARCA_MODELO AS MAMO_1 ON VEEM_FK_MAMO_ID = MAMO_PK_ID
WHERE
(((VEEM_IX_ANO = 2006)) AND ((VEEM_IX_MES = 1) OR (VEEM_IX_MES = 2) OR (VEEM_IX_MES = 3)))
GROUP BY
VEEM_IX_ANO
, VEEM_IX_MES, MAMO_MARCA
ORDER BY
VEEM_TOTAL
DESC

quinta-feira, 25 de janeiro de 2007 13:32

### Todas as Respostas

• Tiago se fosse você jogaria o resultado do seu select para uma tabela temporária ou variável Table e depois daria um SUM nos meses.

Qualquer coisa retorne