JIAP Postado Novembro 29, 2006 Denunciar Share Postado Novembro 29, 2006 Tudo bom pessoal? Meu primeiro post aqui :D É o seguinte, tenho duas tabelasCIDADECod_Cidade (PK)Nome_CidadePERCURSOCod_Percurso (PK)Cod_Cidade_Origem (FK)Cod_Cidade_Destino (FK)Preciso fazer uma Consulta para saber o nome das cidades de origem e destino quando o Cod_Percurso for igual a um determinado valor.Obrigado pela ajuda pessoal!Exemplo de DadosCIDADECod_Cidade | Nome_Cidade01 São Paulo02 Rio de JaneiroPERCURSOCod_Percurso | Cod_Cidade_Origem | Cod_Cidade_Destino23 01 02 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Novembro 29, 2006 Denunciar Share Postado Novembro 29, 2006 Seja bem-vindo.veja se assim te ajuda:select c.cidade from cidade c inner join percurso p on c.cod_cidade = p.Cod_Cidade_Origem where c.cod_percurso = 23 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JIAP Postado Novembro 29, 2006 Autor Denunciar Share Postado Novembro 29, 2006 Obrigado andreia_sp!Eu editei minha pergunta, não sei se vai alterar a sua resposta.Esqueci de mencionar que preciso do nome da cidade de origem e destino.Ainda não testei o que me passou pois estou em horário de almoço.Obrigado pela ajuda. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Novembro 29, 2006 Denunciar Share Postado Novembro 29, 2006 é só adicionar os campos para serem exibidos:select c.cidade, p.Cod_Cidade_Origem, p.Cod_Cidade_Destino from cidade c inner join percurso p on c.cod_cidade = p.Cod_Cidade_Origem where c.cod_percurso = 23 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JIAP Postado Novembro 29, 2006 Autor Denunciar Share Postado Novembro 29, 2006 Obrigado pela atençãoExecutei esse sql e me retornou o código da cidade de destino e de origem. E o nome de uma cidade.Como faço para me retornar o nome da cidade de destino e origem?Obrigado mais uma vez! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Novembro 29, 2006 Denunciar Share Postado Novembro 29, 2006 eu marquei errado, onde está cidade é Nome_Cidade, ou seja:select c.nome_cidade, p.Cod_Cidade_Origem, p.Cod_Cidade_Destino from cidade c inner join percurso p on c.cod_cidade = p.Cod_Cidade_Origem where c.cod_percurso = 23o nome da cidade de destino e origem está em outra tabela? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JIAP Postado Novembro 29, 2006 Autor Denunciar Share Postado Novembro 29, 2006 O nome da cidade de origem e destino está na tabela CIDADEExecutando essa sql, vou ter só o nome de uma cidade.Como buscar o nome das duas cidades?Obrigado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Novembro 29, 2006 Denunciar Share Postado Novembro 29, 2006 Note que o filtro foi pelo cod_percuso=23. Por isso que aparece somente 1 registro. Caso voce queira que mostre os registros da tabela cidade mesmo quando não retornar resultado da tabela percurso, use o Left join:select c.nome_cidade, p.Cod_Cidade_Origem, p.Cod_Cidade_Destino from cidade c left join percurso p on c.cod_cidade = p.Cod_Cidade_Origem where c.cod_percurso = 23para exibir os outros campos é só colocar os nomes deles, caso perteçam à tabela de cidade é só colocar na frente do nome do campo o c. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JIAP Postado Novembro 29, 2006 Autor Denunciar Share Postado Novembro 29, 2006 Exato, quero que me retorne somente um registro. Mas nessa tupla precisa ter os campos:Codigo_Percurso, NomeCidadeOrigem, NomeCidadeDestino23 | são Paulo | Rio de JaneiroNakela sql que me passou, ela retorna o seguinte:são Paulo | 01 | 02Valeu d+ aí a atenção. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Novembro 29, 2006 Denunciar Share Postado Novembro 29, 2006 Supondo que os campos NomeCidadeOrigem e NomeCidadeDestino estejam na tabela cidade:select c.nome_cidade, c.NomeCidadeOrigem, c.NomeCidadeDestino from cidade c left join percurso p on c.cod_cidade = p.Cod_Cidade_Origem where c.cod_percurso = 23 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JIAP Postado Novembro 29, 2006 Autor Denunciar Share Postado Novembro 29, 2006 Desculpe aí a trabalheira. Acho que eu estou me expressando errado.Vou ilustrar minha dúvida.Minhas tabelas são essas:Figura 1As tabelas com dados e o resultado do SelectFigura 2Espero que tenho sido mais claro agora.Muito obrigado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Novembro 29, 2006 Denunciar Share Postado Novembro 29, 2006 e em que tabela estao os campos NomeCidadeOrigem e NomeCidadeDestino ? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JIAP Postado Novembro 29, 2006 Autor Denunciar Share Postado Novembro 29, 2006 Só existe o campo Nome_Cidade na tabela CIDADENome_Cidade_Destino e Nome_Cidade_Origem é um alias.Como na tabela PERCURSO tem duas chaves estrangeiras de uma mesma tabela, então é preciso usar um rolename para não ter dois campos iguais. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .Andreia. Postado Novembro 29, 2006 Denunciar Share Postado Novembro 29, 2006 opa foi mal, hoje to com raciocinio lento rsss, tente agora:select p.codigo_percurso, c.nome_cidade [Cidade destino], c2.nome_cidade [Cidade origem] from percurso p inner join cidade c on c.codigo_cidade = p.codigo_cidade_destino inner join cidade c2 on c2.codigo_cidade = p.codigo_cidade_origem where p.codigo_percurso = 23 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 JIAP Postado Novembro 30, 2006 Autor Denunciar Share Postado Novembro 30, 2006 PERFEITO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! :D :D :D :D :D Muito, muito obrigado!Ficou em cima!!!!!!!Agradeço muito a ajuda.Abraço! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
JIAP
Tudo bom pessoal? Meu primeiro post aqui :D
É o seguinte, tenho duas tabelas
CIDADE
Cod_Cidade (PK)
Nome_Cidade
PERCURSO
Cod_Percurso (PK)
Cod_Cidade_Origem (FK)
Cod_Cidade_Destino (FK)
Preciso fazer uma Consulta para saber o nome das cidades de origem e destino quando o Cod_Percurso for igual a um determinado valor.
Obrigado pela ajuda pessoal!
Exemplo de Dados
CIDADE
Cod_Cidade | Nome_Cidade
01 São Paulo
02 Rio de Janeiro
PERCURSO
Cod_Percurso | Cod_Cidade_Origem | Cod_Cidade_Destino
23 01 02
Link para o comentário
Compartilhar em outros sites
14 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.