unir 6 tabelas

Delphi

12/10/2014

Bom dia , gostaria de unir 6 tabelas sendo que
tabela1 e ligada a tabela1dep pelo campo item
tabela2 e ligada a tabela2dep pelo campo item
tabela3 e ligada a tabela3dep pelo campo item

e as tabelas 2 e 3 sao ligadas a tabela1 atraves do campo cpf

quero unir para gerar um relatori, onde terei o seginte lay out

ITEM - NOME - CPF - PREMIO (O CAMPO PREMIO SERA O RESULTADO DA SOMA DAS 6 TABELAS)
NAO PODE HAVER REPETIÇÃO DOS NOMES POIS EM CADA TABELA 2 E 3 EU POSSO TER OS MESMOS NOMES QUE TEM NA TABELA1, POIS A TABELA1 E A PRINCIPAL.
TENTEI FAZER DA SEGUINTE FORMA

SELECT a.item,a."Segurado",a."Cpf",a."PremioA",
(a."PremioA"+b."PremioA"+c."PremioA") as total,


( SELECT d."PremioA" FROM apol_p933113 A
inner JOIN dep_p933113 D
on A.item = D."Item" ),

( SELECT e."PremioA" FROM apol_p935013 B
inner JOIN dep_p935013 E
on B."Item" = E."Item" ),


( SELECT f."PremioA" FROM apol_p83813 C
inner JOIN dep_p83813 f
on C."Item" = F."Item")

FROM apol_p933113 A
INNER JOIN apol_p935013 B
INNER JOIN apol_p83813 C
ON a."Cpf" = b."Cpf"
ON a."Cpf" = c."Cpf"


OBS. AS 6 TABELAS TEM OS MESMOS CAMPOS [img:descricao=Essa foi a minha tentativa]http://arquivo.devmedia.com.br/forum/imagem/373128-20141012-081625.png[/img]
Malaquias Beltrame

Malaquias Beltrame

Curtidas 0

Respostas

Malaquias Beltrame

Malaquias Beltrame

12/10/2014

Pessoal descobri que nao precisa disso tudo que coloquei a coisa ficou um pouco mais simples.
ficou dessa forma
select DISTINCT a.item,a."Segurado",a."Cpf",a."PremioTot" as Princ_3113,
b."PremioTot" as Princ_5013,c."PremioTot" as Princ_813,
(A."PremioTot"+B."PremioTot"+C."PremioTot") as total
FROM apol_p933113 A

INNER JOIN apol_p935013 B
INNER JOIN apol_p83813 C

ON a."Cpf" = b."Cpf"
ON a."Cpf" = c."Cpf"

order by a.item

Só que tem um pequeno problema .
se eu tenho um segurado na primeira e na segunda tabela e na terceira eu não tenho ele traz um valor da terceira.( nao sei de onde ele traz o valor pois não tem o segurado na terceira tabela.
ai a soma não bate.
GOSTEI 0
POSTAR