[firebase-br] RES: agrupar varios itens de um count com group by

Matheus Georg Mathias(Priori) desenvolvedor5 em priorize.com.br
Seg Set 8 14:20:04 -03 2014


Boa Tarde,

Mais ou menos como a solução anterior pode se criar olhando a normalização
uma tabela nova com os grupos e só vincular eles no teu cadastro de
especialidade.
Ou pode apenas colocar um campo de descrição no cadastro de especialidade
que é o grupo ,
Destas duas formas você poderá apenas trocar a especialidade por grupo, e os
que você não irá colocar em um grupo o nome do grupo vai ser a própria
especialidade.



-----Mensagem original-----
De: lista [mailto:lista-bounces em firebase.com.br] Em nome de Fabiano Martins
Enviada em: segunda-feira, 8 de setembro de 2014 14:14
Para: FireBase
Assunto: Re: [firebase-br] agrupar varios itens de um count com group by

Boa tarde

Neste caso é melhor criar o grupo na tabela e fazer o agrupamento pelos
grupos.

Att,

Fabiano Martins
Clipp-net Informática
Skype: mgfabiano
Cel: (16) 98137-2091
e-mail: fabiano em clippnet.com.br

-----Mensagem Original-----
From: william figueiredo
Sent: Monday, September 08, 2014 11:06 AM
To: FireBase
Subject: [firebase-br] agrupar varios itens de um count com group by

Bom dia a todos. Peço desculpas pelo email extenso mas e importante para
deixar claro meu problema

crie a seguinte query

select lotensup.cod_espec,espec.desespec,
extract(month from lotensup.dt_cons) as MES, count(extract(month from
lotensup.dt_cons)) as Quantidade from lotensup inner join espec on
lotensup.cod_espec = espec.codespec inner join profiss on
lotensup.cod_seq_prof = profiss.cod_seq_prof inner join consnsup on
lotensup.nr_lote = consnsup.nr_lote where extract(year from
lotensup.dt_cons) = '2014'
group by lotensup.cod_espec,espec.desespec,extract(month from
lotensup.dt_cons)

essa me retorna o seguinte resultado

COD_ESPEC  DESESPEC                         MES  QUANTIDADE
223505     Enfermeiro                         2           8
223505     Enfermeiro                         3           8
223505     Enfermeiro                         5          10
223530     Enfermeiro do trabalho             2          35
223530     Enfermeiro do trabalho             3          37
223530     Enfermeiro do trabalho             4          19
223530     Enfermeiro do trabalho             5          44
223530     Enfermeiro do trabalho             6          11
223530     Enfermeiro do trabalho             7          30
223530     Enfermeiro do trabalho             8          36
223530     Enfermeiro do trabalho             9          10
223545     Enfermeiro obstétrico              1           5
223545     Enfermeiro obstétrico              2          13
223545     Enfermeiro obstétrico              3           6
223545     Enfermeiro obstétrico              4          15
223545     Enfermeiro obstétrico              5          16
223545     Enfermeiro obstétrico              6           8
223545     Enfermeiro obstétrico              7          36
223545     Enfermeiro obstétrico              8          22
223545     Enfermeiro obstétrico              9           8
223605     Fisioterapeuta geral               1          25
223605     Fisioterapeuta geral               2          59
223605     Fisioterapeuta geral               3          30
223605     Fisioterapeuta geral               4          53
223605     Fisioterapeuta geral               5          43
223605     Fisioterapeuta geral               6          37
223605     Fisioterapeuta geral               7          66
223605     Fisioterapeuta geral               8          50
223605     Fisioterapeuta geral               9          13
223660     Fisioterapeuta  do trabalho        3           1
223710     Nutricionista                      1          11
223710     Nutricionista                      2          25
223710     Nutricionista                      3          21
223710     Nutricionista                      4          27
223710     Nutricionista                      5          40
223710     Nutricionista                      6          41
223710     Nutricionista                      7          49
223710     Nutricionista                      8          35
223710     Nutricionista                      9          14
223810     Fonoaudiólogo                      1          13
223810     Fonoaudiólogo                      2          24
223810     Fonoaudiólogo                      3          14
223810     Fonoaudiólogo                      4          36
223810     Fonoaudiólogo                      5          17
223810     Fonoaudiólogo                      6           3
223810     Fonoaudiólogo                      7           1
223810     Fonoaudiólogo                      8          26
223810     Fonoaudiólogo                      9          10
225112     Médico neurologista                1           8
225112     Médico neurologista                2          32
225112     Médico neurologista                3          12
225112     Médico neurologista                4          28
225112     Médico neurologista                5          54
225112     Médico neurologista                6          30
225112     Médico neurologista                7           9
225112     Médico neurologista                8          47
225112     Médico neurologista                9           7
225125     Médico clínico                     1          20
225125     Médico clínico                     2          31
225125     Médico clínico                     3          13
225125     Médico clínico                     4          18
225125     Médico clínico                     5          18
225125     Médico clínico                     6          25
225125     Médico clínico                     7           9
225125     Médico clínico                     8          24
225125     Médico clínico                     9           6
225127     Médico pneumologista               1           8
225127     Médico pneumologista               2          65
225127     Médico pneumologista               3          47
225127     Médico pneumologista               4          53
225127     Médico pneumologista               5          54
225127     Médico pneumologista               6          46
225127     Médico pneumologista               7          60
225127     Médico pneumologista               8          62
225127     Médico pneumologista               9          18
225140     Médico do trabalho                 1          13
225140     Médico do trabalho                 2          31
225140     Médico do trabalho                 3          24
225140     Médico do trabalho                 4          28
225140     Médico do trabalho                 5          38
225140     Médico do trabalho                 6          12
225140     Médico do trabalho                 7          35
225140     Médico do trabalho                 8          32
225140     Médico do trabalho                 9          12
225170     Médico generalista                 2           2
225170     Médico generalista                 3           5
225170     Médico generalista                 4           6
225170     Médico generalista                 5           1
225170     Médico generalista                 7           2
225170     Médico generalista                 8           3
225250     Médico ginecologista e obstetra    1          32
225250     Médico ginecologista e obstetra    2          26
225250     Médico ginecologista e obstetra    3          11
225250     Médico ginecologista e obstetra    4          31
225250     Médico ginecologista e obstetra    5          36
225250     Médico ginecologista e obstetra    6          34
225250     Médico ginecologista e obstetra    7          31
225250     Médico ginecologista e obstetra    8          48
225250     Médico ginecologista e obstetra    9           5
251605     Assistente social                  1           8
251605     Assistente social                  2          16
251605     Assistente social                  3           7

esse resultado é correto, porem preciso somar alguns desses grupos em um só
grupo, mantendo a estrutura de resultados mês a mês, por exemplo tenho que
criar o grupo saúde do trabalho onde serão somados os grupos
225170- Médico generalista,225125- Médico clínico e 225140   Médico do
trabalho, mantendo as linha de produção mensais, o que iria gerar um único
grupo com a produção dos três, e eliminando sua visualização individual, e
não interferindo nos outros que não serão somados. isso precisa ser feio
dentro do banco em uma view ou procedure(uso uma procedure no momento).
alguém tem ideia de como faço pra conseguir esse resultado??  desde ja
agradeço a ajuda

William Figueiredo

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para
saber como gerenciar/excluir seu cadastro na lista, use: 
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa 


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br Para
saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista