Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

taiar

[Resolvido] JOINS em 3 tabelas

Recommended Posts

Olá!!

 

Suponhamos que eu tenha 3 tabelas:

 

[clientes]

- id
- nome
- id_estado
- id_cidade

 

[estados]

- id
- nome

[cidades]

- id
- nome
- id_estado

Eu gostaria de selecionar os dados do cliente, com o nome do estado e cidade referenciados pelos ids do registro, no caso:

clientes.id

clientes.nome

estados.nome

cidades.nome

 

Como faria o JOIN dessas tabelas para que a query me retornasse isso?

 

 

Ainda pergunto mais: o que seria mais rápido?

1 - Fazer o JOIN das tabelas estado e cidade na tabela de usuários ou

2 - Fazer o JOIN da tabela de estados na tabela de cidades e depois o join da tabela de cidades na tabela de estados?

 

Bem, é isso!

Muito obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

A tabela 'clientes' não precisa de id_estado. Só id_cidade.

 

Tente assim:

SELECT cli.nome, e.nome, c.nome
FROM clientes AS cli
INNER JOIN cidades AS c ON c.id = cli.id_cidade
INNER JOIN estados AS e ON e.id = c.id_estado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Claro que funcionou perfeitamente, cabra!

Fiz as devidas alterações também.

 

E realmente, nao era nem necessario interagir com a tabela dos estados nesse momento, uma vez que a sigla do estado é presente na própria tabela de cidades...

 

Fazer o que... Foi a pressa!

 

Muito obrigado!!

Até a próxima!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.