MySQL Ajuda com INNER JOIN
Fala pessoal, boa noite! Estou quebrando a cuca aqui, preciso de ajuda para estruturar a sintaxe correta do INNER JOIN na questão 3 e se ele é a melhor opção para resolver as questões 3 e 4.
Nós temos um sistema de gerenciamento de professores e alunos em uma escola baseada em um banco de dados MySQL, que possui 3 tabelas (Professor, Aluno e Relacionamento) com o seguinte conteúdo:
PROFESSOR
id nome assinatura
{Don Tomas}
{Don Pedro}
{Doña Mercedes}
{Doña Carmen}
ALUNO
id nome
RELACIONAMENTO
id professor_id aluno_id
Todas as tabelas têm um índice primário chamado "id", que identifica cada registro de maneira exclusiva. A tabela "Relacionamento" é aquela que relaciona os professores aos alunos.
Precisamos que você construa os comandos necessários do MySQL para obter as seguintes informações:
1. Nome do professor de ciência
SELECT * FROM Professor WHERE assinatura=ciencia;
2. Conte quantos alunos estão na escola
SELECT COUNT(id) FROM Alumno;
3. Lista de nomes com todos os alunos do professor de ciências, levando em conta que os únicos dados que temos sobre o professor é que a assinatura dele é "ciência".
SELECT
Professor.assinatura,
Professor.id,
Relacionamento.professor_id,
Relacionamento.aluno_id,
Aluno.nome
FROM
Professor,
Relacionamento,
Aluno
INNER JOIN
nome ON
4. Lista de alunos que não estão na aula de ciências, levando em conta que os únicos dados que temos sobre o professor é que a assinatura dele é "ciência".
Obrigado pela atenção, abraços!
Nós temos um sistema de gerenciamento de professores e alunos em uma escola baseada em um banco de dados MySQL, que possui 3 tabelas (Professor, Aluno e Relacionamento) com o seguinte conteúdo:
PROFESSOR
id nome assinatura
{Don Tomas}
{Don Pedro}
{Doña Mercedes}
{Doña Carmen}
ALUNO
id nome
RELACIONAMENTO
id professor_id aluno_id
Todas as tabelas têm um índice primário chamado "id", que identifica cada registro de maneira exclusiva. A tabela "Relacionamento" é aquela que relaciona os professores aos alunos.
Precisamos que você construa os comandos necessários do MySQL para obter as seguintes informações:
1. Nome do professor de ciência
SELECT * FROM Professor WHERE assinatura=ciencia;
2. Conte quantos alunos estão na escola
SELECT COUNT(id) FROM Alumno;
3. Lista de nomes com todos os alunos do professor de ciências, levando em conta que os únicos dados que temos sobre o professor é que a assinatura dele é "ciência".
SELECT
Professor.assinatura,
Professor.id,
Relacionamento.professor_id,
Relacionamento.aluno_id,
Aluno.nome
FROM
Professor,
Relacionamento,
Aluno
INNER JOIN
nome ON
4. Lista de alunos que não estão na aula de ciências, levando em conta que os únicos dados que temos sobre o professor é que a assinatura dele é "ciência".
Obrigado pela atenção, abraços!
Nikopol
Curtidas 0
Respostas
William Maciel
01/08/2019
Boa tarde Nikopol.
Veja o artigo do Wellington abaixo :
https://www.devmedia.com.br/clausulas-inner-join-left-join-e-right-join-no-sql-server/18930
Veja o artigo do Wellington abaixo :
https://www.devmedia.com.br/clausulas-inner-join-left-join-e-right-join-no-sql-server/18930
GOSTEI 0
Emerson Nascimento
01/08/2019
leia o artigo indicado pelo William Maciel.
de qualquer modo, a instrução deverá ser parecida com esta abaixo:
de qualquer modo, a instrução deverá ser parecida com esta abaixo:
SELECT A.nome FROM Professor P INNER JOIN Relacionamento R on R.id_professor = P.id INNER JOIN Aluno A on A.id = R.id_aluno WHERE P.assinatura = 'ciência'
GOSTEI 0