[firebase-br] Ajuda com INNER JOIN....

Pablo Gonçalves Bragança gafamaey em gmail.com
Qui Jan 24 09:16:16 -03 2008


Bom Marcelo... Lembrou bem....
REG54 são os itens e REG50 é a capa da nota.
Se eu entendi bem o que vc me disse, o problema é pq tenho mais de uma linha
(resultado) no meu segundo select. Só que, em 90% desse select vão haver
duas linhas ou mais como resultado. rsrs...
O Campo NUMERO é o campo da Nota Fiscal já. O que ocorre é que eu tenho
apenas um NUMERO de Nota Fiscal (por ALIQUOTA de ICMS) no REG50 e dois ou
mais NUMEROS de Nota Fiscal (por ALIQUOTA de ICMS) no REG54; Ou seja, para
cada Item da Nota Fiscal, eu armazeno seu NUMERO.
Então, mesmo fazendo o que vc me disse, continuou dando o mesmo erro....
Mas vlw pela ajuda aê..... Se lembrar de mais alguma coisa para contornar o
erro me fala.... Vou continuar na luta aqui!!!!




-- 
*****************************
Att,
Pablo Bragança
Programador
Adm. Redes de Comp.
*****************************


> ------------------------------
>
> Message: 14
> Date: Wed, 23 Jan 2008 08:45:06 +1100
> From: "Marcelo Papuska" <krpmate em gmail.com>
> Subject: Re: [firebase-br] Ajuda com INNER JOIN....
> To: FireBase <lista em firebase.com.br>
> Message-ID:
>         <f8f786df0801221345u4429454aw36818bcbfef947dd em mail.gmail.com>
> Content-Type: text/plain; charset=ISO-8859-1
>
> Ola, o erro e simples de ser contornado.
> O que esta acontecendo e que existe mais de um registro no segundo select,
> entao
> esta faltando mais algum vinculo.
> se nao me falha a memoria, reg54 sao os items e reg50 sao as capas, esta
> certo?
> vc sabe qual o campo que fica o numero da NF / SERIE no reg50 e 54?
>
> basta colocalos na sintaxe abaixo.
>
>
>
> tenta assim:
>
> update REG54
> set REG54.DATA = (SELECT REG50.DATA FROM REG50
>                                 WHERE REG50.NUMERO = REG54.NUMERO
>                                      AND REG50.CNPJ        = REG54.CNPJ
>                                      AND REG50.NF            = REG54.NF
>                                      AND REG50.SERIE       = REG54.SERIE)
>
> where REG54.DATA IS NULL
>
>
> OUTRA DICA IMPORTANTISSIMA.
> coloque a clausula where na ordem que esta o indice da tabela REG50
> exemplo:
> se seu indice estiver NUMERO + NF + SERIE + CNPJ
> assim deve estar seu where.
>
> qq coisa posta novamente.
>
> abraco.
>
>
> ------------------------------
>



Mais detalhes sobre a lista de discussão lista