Selecionar mais de 3 tabelas

Bom dia pessoal,

Sempre fiz select de 2 ou 3 tabelas, mas agora preciso fazer select com várias condições de 8 tabelas.

Tentei INNER JOIN, RIGHT OUTER JOIN, etc. E me lista apenas 1 ou quando uma única tabela está vazia me lista nada. Gostaria de alguma sugestão.

Segue meu SQL completo:

E o resultado repetido e não de todos os fornecedores…

CÓDIGO SQL:

SELECT
   fornecedores.cod_fornecedor,
   fornecedores.razao_social,
   fornecedores.fantasia,
   fornecedores.cnpj,
   fornecedores.ie,
   fornecedores.email,
   fornecedores.cep,
   fornecedores.logradourro,
   fornecedores.complemento,
   fornecedores.cidade,
   fornecedores.estado,
   fornecedores.responsavel_contato,
   fornecedores.telefone_empresa,
   fornecedores.telefone_responsavel,
   fornecedores.celular,
   fornecedores.qtd_entregadores,
   fornecedores.data_fundacao,
   fornecedores.senha,
   fornecedores.data_hora_cadastro,
   fornecedores.bairro,
   fornecedores.numero,
   fornecedor_visual.cod_fornecedor_visual,
   fornecedor_visual.cod_fornecedor,
   fornecedor_visual.descricao_empresa,
   fornecedor_visual.site,
   fornecedor_visual.facebook,
   fornecedor_visual.twitter,
   fornecedor_visual.instagram,
   fornecedor_visual.youtube,
   fornecedor_visual.localizacao_mapa,
   fornecedor_visual.logomarca,
   fornecedor_visual.foto1,
   fornecedor_visual.foto2,
   fornecedor_visual.foto3,
   fornecedor_visual.foto4,
   fornecedor_visual.data_cadastro,
   fornecedor_visual.latitude,
   fornecedor_visual.longitude,
   fornecedor_tipo_entrega.cod_fornecedor_tipo_entrega,
   fornecedor_tipo_entrega.cod_fornecedor,
   fornecedor_tipo_entrega.descricao,
   fornecedor_tipo_entrega.valor,
   fornecedor_tipo_entrega.data_cadastro,
   fornecedor_funcionamento.cod_forn_funcionamento,
   fornecedor_funcionamento.cod_fornecedor,
   fornecedor_funcionamento.aberto_dias,
   fornecedor_funcionamento.hora_inicio,
   fornecedor_funcionamento.hora_fim,
   fornecedor_funcionamento.data_cadastro,
   fornecedor_configura_frete.cod_configura_frete,
   fornecedor_configura_frete.cod_fornecedor,
   fornecedor_configura_frete.tem_delivery,
   fornecedor_configura_frete.custo_padrao,
   fornecedor_configura_frete.frete_gratis,
   fornecedor_configura_frete.valor_minimo_frete_gratis,
   fornecedor_configura_frete.tipos_pagamentos,
   fornecedor_configura_frete.prazo_entrega_min,
   fornecedor_configura_frete.prazo_entrega_max,
   fornecedor_configura_frete.agenda_comida,
   fornecedor_credito.cod_fornecedor_codigo,
   fornecedor_credito.cod_fornecedor,
   fornecedor_credito.qtd_credito
FROM
   fornecedores INNER JOIN fornecedor_credito ON fornecedores.cod_fornecedor = fornecedor_credito.cod_fornecedor
   RIGHT OUTER JOIN fornecedor_visual ON fornecedores.cod_fornecedor = fornecedor_visual.cod_fornecedor
   RIGHT OUTER JOIN fornecedor_tipo_entrega ON fornecedores.cod_fornecedor = fornecedor_tipo_entrega.cod_fornecedor
   RIGHT OUTER JOIN fornecedor_funcionamento ON fornecedores.cod_fornecedor = fornecedor_funcionamento.cod_fornecedor
   RIGHT OUTER JOIN fornecedor_configura_frete ON fornecedores.cod_fornecedor = fornecedor_configura_frete.cod_fornecedor
WHERE 
   (fornecedor_credito.qtd_credito >= '1')
ORDER BY
   fornecedores.fantasia

Para tabelas que podem estar vazias use left join