Dúvida com SQL
Tenho duas tabelas (aluno, fera), onde na tabela aluno eu tenho os campos codigo e nome, e na tabela fera tenho os campos codigo, nome, insc e curso.
Eu queria saber como faço um select pra comparar a tabela aluno com a tabela fera...
Exemplo:
Quero fazer uma consulta que me retorne o nome e o curso do aluno que estiver nas duas tabelas.
se na tabela aluno tiver o nome joazinho 30 e na tabela fera tambem tiver o mesmo nome, entao a consulta me retorna o nome joazinho 30 e o respectivo curso...
Já fiz de tudo e nao consegui esse select... alguem pode me ajudar???
Obrigado pela atenção.
Douglas
Eu queria saber como faço um select pra comparar a tabela aluno com a tabela fera...
Exemplo:
Quero fazer uma consulta que me retorne o nome e o curso do aluno que estiver nas duas tabelas.
se na tabela aluno tiver o nome joazinho 30 e na tabela fera tambem tiver o mesmo nome, entao a consulta me retorna o nome joazinho 30 e o respectivo curso...
Já fiz de tudo e nao consegui esse select... alguem pode me ajudar???
Obrigado pela atenção.
Douglas
Douglas
Curtidas 0
Respostas
Rjun
22/07/2005
Select Al.Codigo, Al.Nome, Fe.Curso From Aluno Al Left Join Fera Fe on Fe.Codigo = Al.Codigo
Na sua tabela Fera não é necessário o campo nome referente ao aluno. Isso é um erro de normalização.
GOSTEI 0
Douglas
22/07/2005
mas eu tenho que comparar os nomes, pois sao tabelas de bancos diferentes e os codigo nao batem com as duas tabelas... por isso tem que ser feito a comparação entre os nomes e nao pelo codigo...
GOSTEI 0
Rjun
22/07/2005
Então isso tá pior ainda. E se existirem dois alunos com nomes iguais? Isso não é um caso raro. Mas se é pra comparar com nome então é só mudar o sql.
Select Al.Codigo, Al.Nome, Fe.Curso From Aluno Al Left Join Fera Fe on Fe.Nome = Al.Nome
GOSTEI 0
Douglas
22/07/2005
nao funcionou!
Pois está me retornando todos os alunos da tabela aluno, e nem todos estao nao tabela fera, e no campo curso, nao me retorna nada....
o que devo fazer???
Pois está me retornando todos os alunos da tabela aluno, e nem todos estao nao tabela fera, e no campo curso, nao me retorna nada....
o que devo fazer???
GOSTEI 0
Rjun
22/07/2005
Foi mal...tira o left do left join.
Select Al.Codigo, Al.Nome, Fe.Curso From Aluno Al Join Fera Fe on Fe.Nome = Al.Nome
GOSTEI 0
Douglas
22/07/2005
Ta quase na medida
como faço pra pegar parte do nome?
sei que devo usar like, mas como fazer isso??
Obrigado
como faço pra pegar parte do nome?
sei que devo usar like, mas como fazer isso??
Obrigado
GOSTEI 0
Rjun
22/07/2005
Ai precisa saber quem será a base. Tente assim:
Select Al.Codigo, Al.Nome, Fe.Curso From Aluno Al Join Fera Fe on Fe.Nome like ´¬´ + al.Nome + ´¬´
GOSTEI 0