[firebase-br] RES: Fwd: Dúvida no agrupamento

Wilson Rosa wsrosa em gmail.com
Seg Maio 20 15:16:10 -03 2013


Carlos Roberto,

Veja se isto te ajuda:

SELECT
          Codigo,
          Disciplina,
          count(Disciplina) as QtdeDisciplina,
          sum(Nota1) / QtdeDisciplina as Media1,
          sum(Nota2) / QtdeDisciplina as Media2,
          sum(Nota3) / QtdeDisciplina as Media3,
          sum(Nota4) / QtdeDisciplina as Media4
FROM
          Notas
GROUP BY
          Codigo, Disciplina

CÓD.           DISCIPLINA            NOTA1               NOTA2
  NOTA3               NOTA4
                     MATEMATICA              9,00 (QUE É IGUAL A 10 + 10 + 7
/3)
                     FÍSICA                          6,5   (QUE É IGUAL A 5,5
+ 7,5 /2)



*Wilson Rosa
wsrosa em gmail.com
*
*
*


Em 20 de maio de 2013 10:12, Fernando Pereira <fernandotoosp em gmail.com>escreveu:

> Olá Carlos.
> Eu criaria mais duas tabelas, aproveitando melhor a característica de base
> relacional: uma tabela de disciplina e uma para agrupamento de disciplinas.
> Algo como:
>
>
> DISCIPLINA
> CD_DISCIPLINA
> DS_DISCIPLINA
> CD_DISCIPLINA_AGRUP
>
>
> DISCIPLINA_AGRUP
> CD_DISCIPLINA_AGRUP
> DS_DISCIPLINA_AGRUP
>
>
> REGISTROS:------------
> DISCIPLINA_AGRUP
> 1;MATEMATICA
> 2;FISICA
> 3;PORTUGUES
>
> DISCIPLINA
> 1;MATEMATICA I;1
> 2;MATEMATICA II;1
> 3;MATEMATICA BASICA;1
> 4;FISICA I;2
> 5;FISICA II;2
> 6;PORTUGUES;3
>
>
> --------------------------
> Assim, a tabela que irá guardar as notas teriam a seguinte estrutura:
> NOTA
> ID_NOTA  (NUMERADO AUTOMATICAMENTE)
> CD_ALUNO
> CD_DISCIPLINA
> NR_NOTA1
> NR_NOTA2
> NR_NOTA3
> NR_NOTA4
>
>
> Tenta estruturar assim suas tabelas, acredito que o SQL para o relatório
> irá
> fluir naturalmente.
>
> Espero ter ajudado, qq coisa me responda
>
> Abraços
>
> Fernando
>
>
>
>
>
> -----Mensagem original-----
> De: lista [mailto:lista-bounces em firebase.com.br] Em nome de Carlos Roberto
> Enviada em: segunda-feira, 20 de maio de 2013 09:17
> Para: lista em firebase.com.br
> Assunto: [firebase-br] Fwd: Dúvida no agrupamento
>
> Pessoal é minha primeira postagem na lista, já procurei em tópicos
> anteriores e não achei algo que atenda a minha necessidade. Seguinte:
>
> Tenho uma tabela de boletim que tem os seguintes campos:
>
> CÓD.             DISCIPLINA                  NOTA1               NOTA2
>     NOTA3       NOTA4
>
> 12                 MATEMARICA I            10,0                   10,0
>         10,0           9,5
> 34                 MATEMÁTICA II            10,0                   10,0
>         8,5             7,0
> 35                 MATEMÁTICA BÁSICA  7,00                   8,0
>    10,0           9,0
> 10                 PORTUGUÊS                8,00                   8,00
>        10,0           10,0
> 11                 FÍSICA I                        5,5
> 10,0             8,00           9,0
> 12                 FÍSICA II                       7,5
>  8,5              7,5             6,2
>
> A situação é a seguinte: No boletim final tem que sair somente MATEMÁTICA E
> FÍSICA que seria a soma das "MATEMÁTICAS /3" e das "FÍSICAS /2" ou seja,
> tenho que agrupar essas disciplinas para sair apenas:
>
> CÓD.             DISCIPLINA                  NOTA1               NOTA2
>     NOTA3       NOTA4
>
>                      MATEMATICA              9,00 (QUE É IGUAL A 10 + 10 +
> 7 /3)
>                      FÍSICA                         6,5   (QUE É IGUAL A
> 5,5 + 7,5 /2)
>
> Agradeço antecipadamente a ajuda de todos e espero que eu tenha me
> expressado bem. Há também outras disciplinas como QUIMICA I E II, mas se me
> ajudarem com essas aí eu desenrolo as outras.
>
> Uso o delphi 2010 e firebird 2.5
>
> Obrigado desde já.
>
>
> Carlos Roberto.
> ______________________________________________
> 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