Array
(
)

fazer a soma de 3 campos dividir e obter somente 1 resultado

Erivando
   - 04 abr 2006

Olá, amigos do forum!


Estou com um problema, tenho um sistema escolar e o meu cliente mim pediu o seguinte:

no boletim onde tenho várias disciplinas, existe as disciplinas:
PORTUGUÊS - GRAMÁTICA Média = 8.5 (exemplo)
PORTUGUÊS - TEXTO - REDAÇÃO Média = 10.0 (exemplo)
... segue outras disciplinas

o meu cliente mim pede que eu some as médias somentes destas duas disciplinas divida e obtenha uma unica média com o nome de PORTUGUÊS.

Sobre fazer esta soma e dividir seja lá por 2 ou 3 e sei fazer o PROBLEMA é:

como faço para identificar somente estas disciplinas que devo fazer estes calculos?

ramos


Rjun
   - 04 abr 2006

Talvez você poderia ter uma entidade chamada DISCIPLINA e outra chamada MATERIA que teria uma chave estrangeira apontando para DISCIPLINA.

DISCIPLINA
DisciplianaId
Nome

MATERIA
MateriaId
DisciplinaId
Nota

A nota da DISCIPLINA será a média das notas da MATERIA. Acho que dá pra ir por esse caminho.


MIM PEDE? MIM PEDIU?



Erivando
   - 04 abr 2006


Citação:
Talvez você poderia ter uma entidade chamada DISCIPLINA e outra chamada MATERIA que teria uma chave estrangeira apontando para DISCIPLINA.

DISCIPLINA
DisciplianaId
Nome

MATERIA
MateriaId
DisciplinaId
Nota

A nota da DISCIPLINA será a média das notas da MATERIA. Acho que dá pra ir por esse caminho.


MIM PEDE? MIM PEDIU?



eu já tenho no meu banco IB as duas tabelas com as estruturas abaixo:
dar certo?


Citação:

TABLE ´MATERIAS´
´COD_MATE´´CODIGO´,
´DISCIPLINA´´DISCIPLINA´,
´LDB´VARCHAR(3),
PRIMARY KEY (´COD_MATE´)

TABLE ´NOTAS´
´COD_NOTA´´CODIGO´,
´COD_BOLE´´CODIGO´,
´MATRICULA´´MATRICULA´,
´ANO_LETIVO´´ANO´,
´DISCIPLINA´´DISCIPLINA´,
´ETAPA_1_MAR´´NOTA´,
´ETAPA_1_ABR´´NOTA´,
´ETAPA_1_M´´NOTA´,
´ETAPA_1_R´´NOTA´,
´ETAPA_2_MAI´´NOTA´,
´ETAPA_2_JUN´´NOTA´,
´ETAPA_2_M´´NOTA´,
´ETAPA_2_R´´NOTA´,
´ETAPA_3_AGO´´NOTA´,
´ETAPA_3_SET´´NOTA´,
´ETAPA_3_M´´NOTA´,
´ETAPA_3_R´´NOTA´,
´ETAPA_4_OUT´´NOTA´,
´ETAPA_4_NOV´´NOTA´,
´ETAPA_4_M´´NOTA´,
´ETAPA_4_R´´NOTA´,
´PROVAO´´NOTA´,
´PROVAO_R´´NOTA´,
´MEDIA_FINAL´´NOTA´,
´FALTAS´INTEGER,
´PONTOS´VARCHAR(4),
´RESULTADO_FINAL´VARCHAR(9),
´RESULTADO_INTERNO´VARCHAR(1),
´SERIE´´SERIE´,
´TURMA´´TURMA´,
´TURNO´´TURNO´,
PRIMARY KEY (´COD_NOTA´)



Rjun
   - 04 abr 2006

Se você tem materias que podem ter mais de uma nota, então você deveria ter uma subdivisão dessas materias, por exemplo, como eu sugeri. Tendo uma tabela Materias e outra Disciplinas. Outra coisa, não acho muito bom você ter campos notas para cada mês. Outra vez você poderia ter uma tabela contendo o Mês, Tipo da Nota e a Nota.