Página 1 de 1

Select Com Faixa de Idades

Enviado: Qui, 22 Jun 2006 11:04 am
por Spectreman
Tenho um select que retorna:

Selecionar tudo

select idade,count(*)
from cliente
group by idade
IDADE    COUNT(*)
10	2
15	5
17	6
20	1
22	5
32	2
Gostaria que ele retornasse
IDADE COUNT(*)
10..20 14
21..35 7

Sem utilizar nenhuma tabela de faixas

Isto é possível utilizando algum tipo de group by ou outro método?

Enviado: Qui, 22 Jun 2006 2:01 pm
por Spectreman
Fiz assim deu certo

Selecionar tudo

SELECT
 SEXO,
(CASE 
WHEN idade BETWEEN 0  AND 15 THEN ' 0 a 15 '
WHEN idade BETWEEN 16 AND 20 THEN ' 16 - 20 '
WHEN idade BETWEEN 21 AND 35 THEN ' 21 - 35 '
WHEN idade BETWEEN 36 AND 49 THEN ' 36 - 49 ' 
ELSE
   ' ACIMA DE 50 ' 
END)
AS BUCKET,
SUM(QUANT) AS TOTAL
FROM X 
GROUP BY SEXO,
(CASE 
WHEN idade BETWEEN 0  AND 15 THEN ' 0 a 15 '
WHEN idade BETWEEN 16 AND 20 THEN ' 16 - 20 '
WHEN idade BETWEEN 21 AND 35 THEN ' 21 - 35 '
WHEN idade BETWEEN 36 AND 49 THEN ' 36 - 49 ' 
ELSE
   ' ACIMA DE 50 ' 
END)