|
|
#1
|
|||
|
|||
|
Tenho uma dúvida numa consulta em SQL numa base de dados no Microsoft Access, tenho um trabalho para entregar e não sei como resolver isto:
Há a tabela: Aluno(Número,BI,Nome,Curso,Classificação,Disciplin a) (número é chave primária da tabela Aluno) Como posso calcular a média das classificações dos alunos? Obrigado! |
|
#2
|
|||
|
|||
|
Só uma coisa antes, disseram-te para fazeres a tabela dessa maneira ? ela não está muito correcta segundo as normalizações.
O melhor é criares 2 tabelas: tabela aluno: (Número,BI,Nome,Curso) (numero é chave primária) tabela classificações: (número, disciplina, classificação) |
|
#3
|
|||
|
|||
|
Aqui vão as 2 soluções para os 2 casos:
Caso continues a usar so uma tabela o comando SQL é o seguinte: Código:
SELECT Número,BI,Nome,Curso , AVG(Classificação) FROM alunos GROUP BY Número Código:
SELECT alunos.nome, alunos.bi, alunos,curso, class,numero, avg(classificação) from classificação, alunos group by classificação.numero |
|
#4
|
|||
|
|||
|
E como é que se ordena pelo nome?
|
|
#5
|
|||
|
|||
|
Faz assim, para o primeiro caso:
Código:
SELECT Número,BI,Nome,Curso , AVG(Classificação) FROM alunos GROUP BY Nome; Para o segundo caso, com as duas tabelas: Código:
SELECT Alunos.Nome, Alunos.BI, Alunos.Curso, Classificação.Número, AVG(Classificação.Classificação) FROM Classificação, Alunos GROUP BY Aluno.Nome;
__________________
http://www.forumtecnologia.pt.vu/ |