Sql faixa de Idade
ola, Alguem pode me dar uma orientação como faria para trazer clientes com faixas de idades de sql exemplo cliente de 30 /40 anos tem x de 41 a 51 tem y
eu estou fazendo assim mais traz todas as idades
SELECT
EXTRACT(YEAR FROM CURRENT_DATE) - EXTRACT(YEAR FROM C.DATNASC) IDADE, p.nomplano
FROM TAB_CLIE C
inner JOIN tab_cont p1 ON (p1.codclie = c.codclie)
lEFT JOIN tab_plano p ON (p.codplano = p1.codplan)
group by
EXTRACT(YEAR FROM CURRENT_DATE) - EXTRACT(YEAR FROM C.DATNASC), p.nomplano
eu estou fazendo assim mais traz todas as idades
SELECT
EXTRACT(YEAR FROM CURRENT_DATE) - EXTRACT(YEAR FROM C.DATNASC) IDADE, p.nomplano
FROM TAB_CLIE C
inner JOIN tab_cont p1 ON (p1.codclie = c.codclie)
lEFT JOIN tab_plano p ON (p.codplano = p1.codplan)
group by
EXTRACT(YEAR FROM CURRENT_DATE) - EXTRACT(YEAR FROM C.DATNASC), p.nomplano
Marcos Cruz
Curtidas 0
Respostas
Emerson Nascimento
11/06/2021
Veja se algo assim funciona
SELECT SUM(CASE WHEN IDADE BETWEEN 30 AND 40 THEN 1 ELSE 0 END) 30_40, SUM(CASE WHEN IDADE BETWEEN 41 AND 51 THEN 1 ELSE 0 END) 41_51 FROM ( SELECT EXTRACT(YEAR FROM CURRENT_DATE) - EXTRACT(YEAR FROM C.DATNASC) - (CASE WHEN EXTRACT(MONTH FROM CURRENT_DATE) < EXTRACT(MONTH FROM C.DATNASC) THEN 1 ELSE 0 END) IDADE FROM TAB_CLIE C ) TAB
GOSTEI 0