1
resposta

Não aparece os dados nas tabelas

Bom dia!

Minha saída de dados está errada, aparecem os nomes das colunas, mas não aparecem os dados contidos nelas. O que pode estar acontecendo? Quando consulto as tabelas aluno, curso e aluno_curso abre corretamente.

Foi esse código:

 SELECT aluno.primeiro_nome,
                                           aluno.sobrenome,
                                           COUNT(curso.id) numero_cursos
                                           FROM aluno
                                           JOIN aluno_curso ON aluno_curso.aluno_id = aluno.id
                                           JOIN curso ON curso.id = aluno_curso.curso_id
                                           GROUP BY aluno.primeiro_nome, aluno.sobrenome;
1 resposta

Olá, Gabriela!

Pelo que você descreveu, parece que a consulta está correta, mas não está retornando os dados que você espera. Isso pode acontecer por alguns motivos. Aqui estão algumas possibilidades:

  1. As tabelas 'aluno', 'curso' e 'aluno_curso' não têm dados que satisfaçam a condição da junção. Ou seja, pode não haver nenhum aluno que esteja associado a um curso na tabela 'aluno_curso'.

  2. Outra possibilidade é que as colunas 'aluno_id' na tabela 'aluno_curso' e 'id' na tabela 'aluno' não correspondem. Da mesma forma, 'curso_id' na tabela 'aluno_curso' e 'id' na tabela 'curso' podem não corresponder.

  3. A última possibilidade é que a consulta não esteja sendo executada corretamente devido a algum problema no banco de dados.

Para verificar se o problema é a falta de dados correspondentes, você pode tentar executar as consultas JOIN separadamente para ver se elas retornam algum resultado. Por exemplo:

SELECT * 
FROM aluno
JOIN aluno_curso ON aluno_curso.aluno_id = aluno.id;

e

SELECT * 
FROM aluno_curso
JOIN curso ON curso.id = aluno_curso.curso_id;

Se ambas as consultas retornarem resultados, então o problema pode estar na consulta completa. Se alguma delas não retornar resultados, então você encontrou o problema.

Espero ter ajudado e bons estudos!