Tabela com 2 campos com a mesma tabela master
Tenho uma tabela com dois campos que se relacionam com a mesma tabela master e estou montando uma view que deverá retornar os valores da tabela master para ambos os campos, só que os valores retornados são idênticos e não diferentes, conforme deveriam ser. Alguém sabe como resolver isso? Tem que ser como view, não pode ser SP. Uso FB 1.5.
SELECT FUNCIONA.CDFUNCIONARIO, FUNCIONA.NRMATRICULA, FUNCIONA.NMFUNCIONARIO, FUNCIONA.CDCARGO, FUNCIONA.CDNIVELATUAL, FUNCIONA.CDNIVELNOVO, CARGO.NMCARGO, NIVEL.NRNIVEL, NIVEL1.NRNIVEL FROM FUNCIONA INNER JOIN CARGO ON FUNCIONA.CDCARGO = CARGO.CDCARGO INNER JOIN NIVEL ON FUNCIONA.CDNIVELATUAL = NIVEL.CDNIVEL INNER JOIN NIVEL NIVEL1 ON FUNCIONA.CDNIVELNOVO = NIVEL1.CDNIVEL
Gandalf.nho
Curtidas 0
Respostas
Sremulador
24/06/2005
SELECT FUNCIONA.CDFUNCIONARIO, FUNCIONA.NRMATRICULA,
FUNCIONA.NMFUNCIONARIO, FUNCIONA.CDCARGO, FUNCIONA.CDNIVELATUAL, FUNCIONA.CDNIVELNOVO, CARGO.NMCARGO, NIVEL.NRNIVEL, NIVEL1.NRNIVEL FROM FUNCIONA
INNER JOIN CARGO ON FUNCIONA.CDCARGO = CARGO.CDCARGO
INNER JOIN NIVEL ON FUNCIONA.CDNIVELATUAL = NIVEL.CDNIVEL
INNER JOIN NIVEL NIVEL1 ON FUNCIONA.CDNIVELNOVO = NIVEL1.CDNIVEL
SELECT FUNCIONA.CDFUNCIONARIO, FUNCIONA.NRMATRICULA,
FUNCIONA.NMFUNCIONARIO, FUNCIONA.CDCARGO, FUNCIONA.CDNIVELATUAL, FUNCIONA.CDNIVELNOVO, CARGO.NMCARGO, LNV.NRNIVEL, LNV.NRNIVEL, NVL.NRNIVEL, NVL.NRNIVEL FROM FUNCIONA
INNER JOIN NIVEL LVN ON (FUNCIONA.CDNIVELATUAL = NIVEL.CDNIVEL )
INNER JOIN NIVEL NVL NIVEL1 ON (FUNCIONA.CDNIVELNOVO = NIVEL1.CDNIVEL)
Acho que isto resolve linda...
GOSTEI 0
Gandalf.nho
24/06/2005
Acabei de testar aqui e funcionou legal. Valeu pela ajuda :D
GOSTEI 0
Sremulador
24/06/2005
tinha somente um erro mas acho que você deve ter percebido, e que estava no final do expediente :)
INNER JOIN NIVEL NVL [b:76d268ab9f]NIVEL1[/b:76d268ab9f] ON (FUNCIONA.CDNIVELNOVO = NIVEL1.CDNIVEL)
(INNER JOIN NIVEL NVL ON (FUNCIONA.CDNIVELNOVO = NIVEL1.CDNIVEL) )
INNER JOIN NIVEL NVL [b:76d268ab9f]NIVEL1[/b:76d268ab9f] ON (FUNCIONA.CDNIVELNOVO = NIVEL1.CDNIVEL)
(INNER JOIN NIVEL NVL ON (FUNCIONA.CDNIVELNOVO = NIVEL1.CDNIVEL) )
GOSTEI 0
Gandalf.nho
24/06/2005
Eu vi, sem problemas :D
GOSTEI 0