ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Dificuldades com join de tabelas

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Banco de Dados
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
iniciante000
Novato
Novato


Registrado: Domingo, 1 de Novembro de 2015
Mensagens: 14

MensagemEnviada: Sáb Abr 23, 2016 11:27 pm    Assunto: Dificuldades com join de tabelas Responder com Citação

Olá, pessoal. Estou tendo dificuldades em junção de tabelas utilizando o comando join. Estou tentando fazer uma tela de consulta pelo Delphi e estava testando os comandos joins no ibexpert, mas os dados aparecem repetidos e não sei exatamente o que devo fazer. Este é o meu comando SQL para juntar alguns campos das tabelas ALUNO, DISCIPLINA, MATRICULA E NOTAS

SELECT aluno.RA, aluno.NOMEALUNO, disciplina.DISCIPLINAID,disciplina.NOMEDISCIPLINA,matricula.RA, notas.NOTA1, notas.NOTA2, notas.MEDIA from aluno
join matricula on matricula.RA = aluno.RA
join disciplina on disciplina.CURSOID = matricula.CURSOID
join notas on notas.DISCIPLINAID = disciplina.DISCIPLINAID


Eu tenho vários registros em todas as 4 tabelas, mas quando escrevo este código no SQL Editor do ibexpert e executo, ele retorna todos os campos em vazio. Já tentei mudar o join para full join, left join e outer join, mas não resolveu.
Gostaria de saber a opinião de vocês sobre a solução para este problema.
Desde já agradeço a todos que postarem sugestões ou soluções
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
imex
Moderador
Moderador


Registrado: Sexta-Feira, 7 de Janeiro de 2011
Mensagens: 11666

MensagemEnviada: Seg Abr 25, 2016 10:22 am    Assunto: Responder com Citação

Bom dia,

A query não retorna nenhum registro ou retorna vários registros com os campos nulos?
Se a query não retorna nenhum registro, experimente inicialmente trocar os 3 Join por Left Join para ver como fica o resultado.

Espero que ajude

_________________
Assinatura: http://www.imoveisemexposicao.com.br/imoveis-venda-guarulhos-residencial-casa
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
iniciante000
Novato
Novato


Registrado: Domingo, 1 de Novembro de 2015
Mensagens: 14

MensagemEnviada: Ter Abr 26, 2016 11:44 pm    Assunto: Responder com Citação

Tentei mudar para left join, e agora está aparecendo vários registros
com alguns campos preenchidos e alguns vazios
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
imex
Moderador
Moderador


Registrado: Sexta-Feira, 7 de Janeiro de 2011
Mensagens: 11666

MensagemEnviada: Qua Abr 27, 2016 4:33 pm    Assunto: Responder com Citação

Nesse caso existem basicamente 2 possibilidades para os campos nulos:

- o campo está nulo na tabela de origem
- não existe um registro na tabela descrita após o Left Join que atenda a condição especificada após o On

Espero que ajude
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Banco de Dados Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB