Conectar-se a 5 (cinco) tabelas
12/03/2008
0
Olá pessoal.
Sou novo nestas paragens e tentei achar alguma coisa nos posts anteriores mas o que encontrei não me ajudou. Nesse caso, vamos lá. Quem puder ajudar ficarei extremamente grato.
Tenho 5 tabelas e quero fazer uma consulta SQL que retorne informações das 5 ao mesmo tempo. A estrutura é assim:
Tabela 1: matrícula, nome do funcionário, emprego atual
Tabela 2 (backup da Tabela 1): matricula, nome do funcionário, emprego antigo
Tabela 3: arquivo de pagamento mensal, mês fevereiro
Tabela 4: arquivo de pagamento mensal, mês março.
Tabela 5: classificação dos níveis salariais.
A idéia é recuperar os dados dessas 5 tabelas, filtrando a partir da primeira. Preciso pegar o funcionário e encontrar o emprego anterior, o salário anterior, o emprego atual e o salário atual. Além disso, preciso retornar nessa consulta qual o nível salarial atual. Já andei metade de caminho: faço uma consulta que retorna a matrícula, o nome, e emprego antigo e o emprego atual. Com duas tabelas ando bem, mas com as cinco já me embanano todo. Alguém aí tem alguma idéia?
Obrigado! :oops:
Sou novo nestas paragens e tentei achar alguma coisa nos posts anteriores mas o que encontrei não me ajudou. Nesse caso, vamos lá. Quem puder ajudar ficarei extremamente grato.
Tenho 5 tabelas e quero fazer uma consulta SQL que retorne informações das 5 ao mesmo tempo. A estrutura é assim:
Tabela 1: matrícula, nome do funcionário, emprego atual
Tabela 2 (backup da Tabela 1): matricula, nome do funcionário, emprego antigo
Tabela 3: arquivo de pagamento mensal, mês fevereiro
Tabela 4: arquivo de pagamento mensal, mês março.
Tabela 5: classificação dos níveis salariais.
A idéia é recuperar os dados dessas 5 tabelas, filtrando a partir da primeira. Preciso pegar o funcionário e encontrar o emprego anterior, o salário anterior, o emprego atual e o salário atual. Além disso, preciso retornar nessa consulta qual o nível salarial atual. Já andei metade de caminho: faço uma consulta que retorna a matrícula, o nome, e emprego antigo e o emprego atual. Com duas tabelas ando bem, mas com as cinco já me embanano todo. Alguém aí tem alguma idéia?
Obrigado! :oops:
Ningishzidda
Curtir tópico
+ 0
Responder
Posts
12/03/2008
Ningishzidda
Eis o código na versão que funciona (consultando apenas 2 tabelas)!
SELECT
p.codfunc as Matricula,
p.nome as Nome,
pa.funcoes as Fun_Antiga,
p.funcoes as Nova_Funcao,
p.prefixo as Prefixo
FROM
pessoal p,
pessoal_antigo pa,
WHERE
(p.ativinativ <=´3´ or p.ativinativ = ´8´)
and p.prefixo <> ´21´
and p.prefixo <> ´29´
and p.prefixo <> ´39´
and p.prefixo <> ´42´
and p.prefixo <> ´40´
and p.prefixo <> ´08´
and p.prefixo > ´18´
and (p.prefixo < ´60´ or p.prefixo > ´69´)
and pa.codfunc = p.codfunc
SELECT
p.codfunc as Matricula,
p.nome as Nome,
pa.funcoes as Fun_Antiga,
p.funcoes as Nova_Funcao,
p.prefixo as Prefixo
FROM
pessoal p,
pessoal_antigo pa,
WHERE
(p.ativinativ <=´3´ or p.ativinativ = ´8´)
and p.prefixo <> ´21´
and p.prefixo <> ´29´
and p.prefixo <> ´39´
and p.prefixo <> ´42´
and p.prefixo <> ´40´
and p.prefixo <> ´08´
and p.prefixo > ´18´
and (p.prefixo < ´60´ or p.prefixo > ´69´)
and pa.codfunc = p.codfunc
Responder
12/03/2008
Ningishzidda
Humanindade, por favor, disfarcem a minha ignorância... já resolvi o problema, kkkkkk... ô coisa!
Responder
Clique aqui para fazer login e interagir na Comunidade :)