[firebase-br] RES: Ajuda com UPDATE

Luiz Henrique E. Ribeiro ribeiro em w7solucoes.com.br
Ter Jun 27 16:54:56 -03 2006


Walter, 

Qdo troco o "=" pelo "in" "UPDATE itemnf inf set inf.INF_COMISS in( "
dá o seguinte erro: ORA-00927 Sinal de igual ausente.

[  ]'s

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Walter Luiz Portugal
Enviada em: terça-feira, 27 de junho de 2006 16:29
Para: FireBase
Assunto: Re: [firebase-br] Ajuda com UPDATE

Troque = por in, pois nessa select vem vários registros...
----- Original Message -----
From: "Luiz Henrique E. Ribeiro" <ribeiro em w7solucoes.com.br>
To: "'FireBase'" <lista em firebase.com.br>
Sent: Tuesday, June 27, 2006 4:03 PM
Subject: [firebase-br] Ajuda com UPDATE


Boa tarde pessoal,

Estou apanhando para atualizar 11.661 registros que retornam desta consulta:

***************************************************************************
SELECT inf.inf_comiss, inf.PRO_CODIGO,
inf.INF_COMISSTAB, inf.NF_NUMERO,
     n.PED_NUMERO, n.NF_DTPROC
FROM duplicata d, itemnf inf, nota n
 WHERE inf.nf_numero   = d.nf_numero
   AND inf.nf_saient   = d.nf_saient
   AND n.NF_NUMERO     = inf.NF_NUMERO
   AND inf.nf_saient   = n.nf_saient
   AND inf.nf_saient   = 1
   AND inf.pes_emp_cod = d.pes_emp_cod
   AND inf.inf_comiss in (0,8,10)
order by inf.NF_NUMERO desc

 ***************************************************************************

O que eu preciso fazer é atualizar a coluna inf.inf_comiss mas somente nos
casos que estão incluídos no retorno da consulta acima.

Tentei fazer da seguinte forma, mas não deu certo:
***************************************************************************U
UPDATE itemnf inf set inf.INF_COMISS =(
SELECT distinct des.desrc_comissao
  FROM nota n, produto produto, classe classe, descremcom des
 WHERE (    (n.pes_emp_cod = inf.pes_emp_cod)
        AND (n.nf_numero   = inf.nf_numero)
        AND (n.nf_saient   = inf.nf_saient)
        AND (inf.pro_codigo = produto.pro_codigo)
        AND (classe.cla_codigo = produto.cla_codigo)
        AND (classe.cla_codigo = des.cla_codigo)
        AND (classe.lin_codigo = des.lin_codigo)
  AND (inf.inf_comisstab = des.DESR_CODIGO)
        AND n.nf_dtproc >= '21/05/2006'
  AND inf.inf_comiss=0
  AND n.nf_saient =1
  AND NF_CANCELADA=0
       ))

***************************************************************************
Vale lembrar que estou usando o ORACLE 8i.

Alguém poderia me ajudar?

Agradeço desde já e desejo a todos uma excelente semana.

[  ]'s

Lher


Graça a vós e paz da parte daquele que é, e que era, e que há de vir
(Apocalipse 1:4 ). Pois ainda em bem pouco tempo aquele que há de vir virá,
e não tardará.  Hebreus 10:37



______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa

______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa






Mais detalhes sobre a lista de discussão lista