Fórum Consulta utilizando 3 tabelas - Como faco? #446565
25/06/2013
0
Se "cod.movimento" for (1,2) ele busca o codigo na tabela clientes e retorna o "Nome Cliente".
Se "cod.movimento" for (3,4) ele busca o codigo na tabela fornecedores e retorna o "Nome Fornecedor".
Como faço isso no firebird 2.1? Já tentei vários e não consegui colocar a condição dentro do script...
Ex. cod.Movimento | Codcliente | Nome Cliente/Fornecedor
1 55 nome do cliente 55
3 23 nome do fornecedor 23
Gustavo Rosa
Curtir tópico
+ 0Posts
25/06/2013
Joel Rodrigues
Gostei + 0
25/06/2013
Joel Rodrigues
SELECT M.COD_MOVIMENTO, C.COD_CLIENTE AS COD_CLI_FORN, C.NOME_CLIENTE AS NOME_CLI_FORN FROM MOVIMENTO M INNER JOIN CLIENTES C ON C.COD_CLIENTE = M.COD_CLIENTE WHERE M.COD_MOVIMENTO IN (1,2) UNION SELECT M.COD_MOVIMENTO, F.COD_FORNECEDOR AS COD_CLI_FORN, F.NOME_FORNECEDOR AS NOME_CLI_FORN FROM MOVIMENTO M INNER JOIN FORNECEDORES F ON F.COD_FORNECEDOR = M.COD_CLIENTE WHERE M.COD_MOVIMENTO IN (3,4)
Gostei + 0
25/06/2013
Gustavo Rosa
SELECT M.COD_MOVIMENTO, C.COD_CLIENTE AS COD_CLI_FORN, C.NOME_CLIENTE AS NOME_CLI_FORN FROM MOVIMENTO M INNER JOIN CLIENTES C ON C.COD_CLIENTE = M.COD_CLIENTE WHERE M.COD_MOVIMENTO IN (1,2) UNION SELECT M.COD_MOVIMENTO, F.COD_FORNECEDOR AS COD_CLI_FORN, F.NOME_FORNECEDOR AS NOME_CLI_FORN FROM MOVIMENTO M INNER JOIN FORNECEDORES F ON F.COD_FORNECEDOR = M.COD_CLIENTE WHERE M.COD_MOVIMENTO IN (3,4)
Show. O meu estava faltando as identificação do segundo select dos campos relacionados e por isso que não estava conseguindo fazer a seleção. Mas com seu exemplo consegui pegar a onde estava o erro e agora esta funcionando. Obrigado.
Gostei + 0
25/06/2013
Joel Rodrigues
Então estou marcando o tópico como Concluído.
Abraço.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)