cursor Oracle para actualizar os dados da coluna a partir de uma outra tabela

votos
0

eu quero cursor Oracle para atualizar ENTITY_BRANCH.table1 de BRANCH_SECRETARIAT_CODE.table2 baseado em EMPLOYEE_NUMBERem ambas as tabelas se eu tiver mais de 200000 funcionários em ambas as tabelas ...

o table1 que eu quero atualizar olhar como

EMPLOYEE_NUMBER    JOINING_DATE      ENTITY_BRANCH 

     12              11/12/2006          null
     13              01/11/2009          null

table2 para atualização de olhar como ::

 Employee_Number   MINISTRY_CODE   BRANCH_SECRETARIAT_CODE

        12                 333                 30
        13                 222                 31
Publicado 26/07/2016 em 10:31
usuário
Em outras línguas...                            


1 respostas

votos
1

Você pode fazer isso com uma subconsulta:

update ENTITY_BRANCH.table1 t
    set ENTITY_BRANCH = (SELECT t2.BRANCH_SECRETARIAT_CODE
                         FROM BRANCH_SECRETARIAT_CODE.table2 t2
                         WHERE t2.Employee_Number = t.Employee_Number
                        );

Não há necessidade de um cursor para fazer isso. Por outro lado, um índice em table2(Employee_Number, BRANCH_SECRETARIAT_CODE)seria muito útil.

Respondeu 26/07/2016 em 10:35
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more