Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

The Queen

[Resolvido] Update varios blocos

Recommended Posts

TENHO UMA TABELA COM VÁRIOS CONTRATOS SEGURADOS(ABAIXO)

 

TABELA DE SEGUROS

 

CONTRATO PARCELA VALOR_PREMIO COD_CONVENIO DESC_CONVENIO

A25556 1 200

A25556 2 2020

A25556 3 76

A25556 4 299

A25556 5 8541

A25556 6 9545

D45455 1 255

D45455 2 785

D45455 3 8526

D45455 4 10565

 

E PRECISO ATUALIZAR O CÓDIGO E A DESCRIÇÃO DO CONVÊNIO E PARA ISSO CRIE UM SELECT EM VÁRIS OUTRAS TABELAS QUE ME RETORNAM O SEGUINTE RESULTADO

 

TABELA DE CONVENIOS

 

CONTRATO COD_CONVENIO DESC_CONVENIO

A25556 1 MACEIO

D45455 2 PARANÁ

 

O SELECT NÃO CONSEGUE ENCONTRAR TODOS OS CONVÊNIOS DE TODOS OS CONTRATADOS CADASTRADOS NA TABELA DE SEGUROS, MAS TUDO BEM. O QUE QUERO É FAZER UM UPDATE QUE PEGUE ESTE SELECT E ATUALIZE OS CAMPOS CORRESPONDENTES DA TABELA DE SEGUROS. ISSO SERIA FÁCIL NO SQL SERVER PQ TEMOS O UPDATE FROM. O MERGE DO ORACLE NÃO POSSO USAR PQ NÃO TENHO CLAUSULA NEGATIVA. ALGUÉM TEM UMA SUGESTÃO. CURSOR POR FAVOR NÃO. AGRADEÇO A AJUDA.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui está a solução. Acho que um update from seria mais fácil, mas o oracle não tem esta solução.

 

UPDATE BMCTOOLS.TB_GENERALI_ENVIADOS2 A

SET A.COD_CONVENIO = (SELECT COD_CONVENIADA

FROM SCC_CONTRATO_AVB AVB

WHERE AVB.CONTRATO = A. CONTRATO),

A.DESC_CONVENIO = (SELECT CON.NOM_CONVENIADA

FROM SCC_CONTRATO_AVB AVB,

SCC_EMPRESA_CONVENIADA CON

WHERE AVB.COD_CONVENIADA = CON.COD_CONVENIADA

AND AVB.CONTRATO = A. CONTRATO);

 

 

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.