Proste zapytanie łączące:
Kod
SELECT tabela1.pole1 as pole1, tabela1.pole2 as pole2, tabela2.pole1 as pole3, tabela2.pole1 as pole4, tabela3.pole1 as pole5
FROM tabela1, tabela2, tabela3
WHERE tabela1.kategoria = '2' AND tabela1.kategoria = tabela2.kategoria AND tabela1.kategoria = tabela3.kategoria
No i zapytanie bardziej wyrafinowane JOIN:
Kod
SELECT tabela.*, tabela3.pole1 as pole5
FROM (
SELECT tabela1.kategoria, tabela1.pole1 as pole1, tabela1.pole2 as pole2, tabela2.pole1 as pole3, tabela2.pole1 as pole4
FROM tabela1 JOIN tabela2
WHERE tabela1.kategoria = '2'
ON tabela1.kategoria = tabela2.kategoria
) AS tabela LEFT JOIN tabela3
ON tabela.kategoria = tabela3.kategoria
Nie miałem czasu i na czym ich przetestować (nie podesłałeś definicji tabel) ale powinny działać.