- Este tópico contém 17 respostas, 5 vozes e foi atualizado pela última vez 16 anos, 9 meses atrás por
faelsor.
- Você deve fazer login para responder a este tópico.
› Fóruns › SQL e PL/SQL › Insert em Varias Tabelas não consigo criar! 8O
E aí faelsor,
Desculpa quanto ao FROM, foi falta de atenção minha… rs!!
Então, quanto a retornar linhas duplicadas o jeito mais rápido de resolver é jogando um DISTINCT no select, mas deve ter uma forma melhor de se fazer isto, sem o DISTINCT, que é sempre bom tentar evitar…
Depois eu dou uma olhada melhor no seu select!! 🙂
Vlw burga…
Tentei usar o distinct mas não funcionou ele eliminou algumas linhas repetidas mas ainda tem linha com um dos campos diferente mas repetindo os outros…
Exemplo:
produto empresa Num NF
acido cloridrico 37% – du porto – 13657
acido cloridrico 37 % – du porto – 13657
mudou o produto mas eu verifiquei a nota fical e não existem dois pordutos com esse nome apena 1!!!
Galera descobri o erro!!! o problema era em uma das condições where do cod_empresa = 1 pois esse campo se repete em todas as tabelas… e eu fazia essa condição apenas na ultima e não na primeira!
olha o codigo como ficou:
SELECT TPRODUTO.NUM_CLAFISCAL, TPRODUTO.DES_PRODUTO,TCLIENTE.DES_RAZSOCIAL,
TCLIENTE.NUM_CGCCPF, TNFISCAL.NUM_NFISCAL,TNFISCAL.DAT_EMISSAO, TNFITEM.QTD_MATERIAL,
TPRODUTO.SIG_UNIDADE
FROM (TPRODUTO INNER JOIN TNFITEM ON TPRODUTO.COD_PRODUTO =
TNFITEM.COD_PRODUTO AND TPRODUTO.COD_EMPRESA = 1 INNER JOIN
TNFISCAL ON TNFITEM.NUM_CHNOTA = TNFISCAL.NUM_CHAVE INNER
JOIN TCLIENTE ON TCLIENTE.COD_PESSOAFJ =
TNFISCAL.COD_CLIENTE)
WHERE TNFITEM.COD_LINHA = ' 1' AND TNFISCAL.DAT_EMISSAO BETWEEN
'01/12/2009' AND '30/12/2009' AND TNFISCAL.COD_ORICANCEL IS NULL AND TPRODUTO.TIP_PRODUTO=
'M'
ORDER BY TPRODUTO.DES_PRODUTO, TNFISCAL.DAT_EMISSAO
Galera obrigado pelo suporte!!!
› Fóruns › SQL e PL/SQL › Insert em Varias Tabelas não consigo criar! 8O