Forum Pplware

Versão Completa: Query 3 Tabelas Avançado
Está de momento a ver uma versão reduzida do nosso conteúdo. Ver versão completa com o formato adequado.
Boa tarde pessoal,

Preciso de fazer uma query do genero

Select * from 3 tabelas(tabela passaros, casas, utensilios) where nome=$nome;

Ou seja, preciso na mesma query buscar valores de 3 tabelas diferentes.

Cumps.
Select * from passaros inner join casas on passaros.campo = casas.campo inner join utensilios on casas.campo2 = utensilios.campo2 where passaros.nome = 'Benfica'


Serve?
Essas tabelas têm algo em comum, certo?

Deverá ser algo como:

SELECT a.campo1, b.campo2, c.campo3 FROM tabela1 AS a INNER JOIN tabela2 AS b ON (a.id_b = b.id) INNER JOIN tabela3 AS c ON (b.id_c = c.id) WHERE a.filtro_a = %s AND b.filtro_b = %d

Se os registos tiverem de existir em todas as tabelas.

Se não tiverem de existir, mas obviamente quiseres dar preferência aos registos que existem, utilizas LEFT JOIN em vez de INNER JOIN.

Penso que, devido à tua dúvida, não vais compreender muito bem a query em cima. O melhor que te posso dizer é aprender mais um bocado de MySQL primeiro, pois o que está em cima não é nada complicado... :/
URL's de Referência