Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Agrupar por Idades diferentes usando IIF...


BStar

Pergunta

Olá a todos... Estou com o seguinte problema:

Tenho uma consulta SQL que me retorna algumas linhas como mostra a imagem:

idadebanco.png

O problema é que eu tenho que exibir agrupado em uma faixa de idade tal qual esse exemplo:

idadegrid.png

Sei que no SQL Server tem o "CASE", e no Access? Estava lendo sobre o "IIF" mas não consegui usar no meu caso...

Seria algo como:

SE a IDADE estiver entre 0 e 1 ano, mostre os campos QTDE_GUIA, COBRADO E LIBERADO

SE a IDADE estiver entre 2 e 5 anos, mostre os campos QTDE_GUIA, COBRADO E LIBERADO

SE a IDADE estiver entre 6 e 10 anos, mostre os campos QTDE_GUIA, COBRADO E LIBERADO

e assim, sucessivamente...

Alguém pode me ajudar?

O meu muito obrigado por enquanto!

Editado por BStar
Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Opa Leandro, agora funcionou... Obrigado!

Mas é o seguinte, é quase isso... Eu preciso da instrução SQL que me traga às somas conforme essa parte que está marcada na imagem:

testeue.png

Nessa instrução, eu queria que me mostrasse de uma só vez às somas das idades agrupadas conforme fosse "configurada" na query... Ficaria algo como:

1º Linha = (IDADE BETWEEN 0 AND 1) COUNT(QUANT_GUIAS) || SUM(COBRADO) || SUM(LIBERADO)

2º Linha = (IDADE BETWEEN 2 AND 5) COUNT(QUANT_GUIAS) || SUM(COBRADO) || SUM(LIBERADO)

3º Linha = (IDADE BETWEEN 6 AND 10) COUNT(QUANT_GUIAS) || SUM(COBRADO) || SUM(LIBERADO)

4º Linha = (IDADE BETWEEN 11 AND 20) COUNT(QUANT_GUIAS) || SUM(COBRADO) || SUM(LIBERADO)

Não precisa mostrar os campos de idade porque se não, não vai agrupar...

O resultado que eu quero é exatamente como está na segunda imagem do primeiro post, mas sem os "textos" contendo o intervalo de idade... Eu preciso só dos campos QUANT_GUIAS| COBRADO | GLOSADO

Obrigado pela ajuda!

Link para o comentário
Compartilhar em outros sites

  • 0

Então Leandro... Boa noite! Um outro user de um outro forum me ajudou a resolver... Ficou da seguinte forma:

SELECT IDADE_PACIENTE, COUNT(GUIA) AS QTDE_GUIA, SUM(VALOR_TOTAL) AS TOTAL

FROM (SELECT IIF(IDADE_PACIENTE BETWEEN 0 AND 1, 'Até 1 Ano',

IIF(IDADE_PACIENTE BETWEEN 2 AND 5, '2 a 5 Anos',

IIF(IDADE_PACIENTE BETWEEN 6 AND 10, '6 a 10 Anos',

IIF(IDADE_PACIENTE BETWEEN 11 AND 20, '11 a 20 Anos',

IIF(IDADE_PACIENTE BETWEEN 21 AND 50, '21 a 50 Anos',

IIF(IDADE_PACIENTE BETWEEN 51 AND 60, '51 a 60 Anos',

IIF(IDADE_PACIENTE BETWEEN 61 AND 65, '61 a 65 Anos', 'Acima de 66 Anos')))))))

AS IDADE_PACIENTE, GUIA, VALOR_TOTAL FROM PREANALISE) GROUP BY IDADE_PACIENTE

Muito obrigado por me ajudar!

Abs e bom fds!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...