Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

matheussoli

Consulta de notas

Recommended Posts

Olá pessoal! Estou precisando de uma ajudinha se possível.

 

Tenho duas tabelas:

 

A primeira é a disciplina_modulo e contém todas as disciplinas do modulo 14 do curso 3. Num total de oito disciplinas.

 

A segunda tabela é de notas, nela tenho as notas digitadas até o momento. No módulo 14 e curso 3 só tenho notas de duas disciplinas.

 

Quando relaciono as duas tabelas e mando exibir, só aparece as duas disciplinas que tem notas. Veja exemplo abaixo:

 

 

Só consigo exibir assim

 

Matemática 15

Geografia 12

 

 

Gostaria de exibir assim:

 

Português

Ed. Física

Matemática 15

História

Ciências

Geografia 12

Ética

Inglês

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Motta. Obrigado pela resposta!

 

Funcionou! Mas houve um problema. Quando eu coloco no where a matricula de determinado aluno ele volta a exibir só as disciplinas que tem nota. A matricula só existe na tabela notas. Você poderia me dar alguma sugestão?

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Publica o sql e estrutura das tabelas , mas no WHERE vc deve estar a matricula na tabela notas , teste na de alunos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Meu select está assim:

SELECT disciplinas_modulo.disciplina_codigo, diario_notas.nota FROM disciplinas_modulo
LEFT OUTER JOIN diario_notas ON disciplinas_modulo.disciplina_codigo = diario_notas.disciplina
WHERE disciplinas_modulo.disciplina_curso = 3 AND disciplinas_modulo.disciplina_modulo = 16 AND diario_notas.matricula = 0002799

Tabela disciplinas_modulo:

CREATE TABLE `disciplinas_modulo` (
  `Id_disciplina_modulo` int(11) NOT NULL AUTO_INCREMENT,
  `disciplina_periodo_letivo` varchar(10) DEFAULT NULL,
  `disciplina_modulo` varchar(10) DEFAULT NULL,
  `disciplina_curso` varchar(10) DEFAULT NULL,
  `disciplina_codigo` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`Id_disciplina_modulo`)
) ENGINE=InnoDB AUTO_INCREMENT=95 DEFAULT CHARSET=latin1;

Tabela notas:

CREATE TABLE `diario_notas` (
  `Id` int(11) NOT NULL AUTO_INCREMENT,
  `instrumento` varchar(11) CHARACTER SET utf8 DEFAULT NULL,
  `periodo` varchar(11) CHARACTER SET utf8 DEFAULT NULL,
  `disciplina` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
  `professor` varchar(11) COLLATE utf8_unicode_ci DEFAULT NULL,
  `etapa` varchar(11) COLLATE utf8_unicode_ci DEFAULT NULL,
  `curso` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
  `modulo` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
  `turma` varchar(20) COLLATE utf8_unicode_ci DEFAULT NULL,
  `matricula` varchar(11) CHARACTER SET utf8 DEFAULT NULL,
  `valor` varchar(11) CHARACTER SET utf8 DEFAULT NULL,
  PRIMARY KEY (`Id`)
) ENGINE=InnoDB AUTO_INCREMENT=203 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vc deve ter uma tabela ALUNOS use-a como base.

 

Faça join dela com disciplina_modulo e outer join com notas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.