Ajuda para retornar dados do banco

Boa tarde galera,

Podem me ajudar em um sql com 3 tabelas que não to conseguindo acertar aqui.

Seguinte tenho duas tabelas:

Tabela DHCP

id	|mac				|ip				|host
1	00-00-00-00-00-00	 192.168.1.1	 casa.dominio.br
2	00-00-00-00-00-00	 192.168.1.2	 escritorio.dominio.br
3	00-00-00-00-00-00	 192.168.1.3

Tabela Switch

id	|porta	|mac
1	2		00-00-00-00-00-00	
2	4		00-00-00-00-00-00
3	5		00-00-00-00-00-00
4   6		00-00-00-00-00-00

Tabela Filtro

id	|mac				|ip				|alias
1	00-00-00-00-00-00	 192.168.1.1	 Computador de casa
2	00-00-00-00-00-00	 192.168.1.2	 Computador de Escritorio
3	00-00-00-00-00-00	 192.168.1.3	 Computador do quarto

Usando where filtro.mac = switch.mac.
Preciso que imprima todos os valores do switch.
Preciso do seguinte resultado resultado:

switch.mac			|dhcp.mac				|dhcp.ip		|dhcp.host			|switch.porta	|filtro.alias
00-00-00-00-00-00	00-00-00-00-00-00		192.168.1.1		casa.dominio.br		 2				 Computador de casa	

Caso não o exista ou dhcp.mac ou filtro.mac ele imprime em branco ou “não cadastrado”.
Tipo assim no id 3:

switch.mac			|dhcp.mac				|dhcp.ip		|dhcp.host						|switch.porta	|filtro.alias
00-00-00-00-00-00	00-00-00-00-00-00		192.168.1.3		não encontrado/cadastrado		 5				 Computador do quarto	

Mas que mostre caso não encontre nem um ou nem outro tipo assim:

switch.mac			|dhcp.mac				|dhcp.ip		|dhcp.host						|switch.porta	|filtro.alias
00-00-00-00-00-00											não encontrado/cadastrado		 5				 não encontrado/cadastrado	

To usando inner join mas aí não mostra nada caso não encontre.O Union tb msm coisa.Quero que mostre todo select do switch.

Obrigado.

Poe seu SELECT ai…

Pra mim a tabela Filtro ta errada cara…
na verdade ela é N:N

Nova Tabela Fitro -> Substituida por tabela Referencia

[quote]Referencia
id
id_dhcp
id_switch [/quote]

a consulta ficaria assim

SELECT d.mac, d.ip, d.host, s.porta, CASE WHEN (d.host = "casa.dominio.br") THEN "Computador de Casa" ELSE "PC não é de casa" END, FROM REFERENCIA r INNER JOIN DHCP d ON d.id = r.id_dhcp INNER JOIN SWITCH s ON s.id = r.id_switch ORDER BY r.id ASC

SELECT switch.mac, dhcp.mac, dhcp.ip, dhcp.nome, switch.porta FROM switch INNER JOIN dhcp ON switch.mac = dhcp.mac INNER JOIN filtro ON switch.mac = filtro.mac