Oracle cursorul pentru actualizarea datelor de coloană dintr-un alt tabel

voturi
0

Vreau Oracle cursorul pentru actualizarea ENTITY_BRANCH.table1 de la BRANCH_SECRETARIAT_CODE.table2 pe baza EMPLOYEE_NUMBERîn ambele tabele , dacă am avea mai mult de 200000 de angajați în ambele tabele ...

Table1 care vreau să actualizeze arata ca

EMPLOYEE_NUMBER    JOINING_DATE      ENTITY_BRANCH 

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

Table2 pentru actualizarea de la arata ca ::

 Employee_Number   MINISTRY_CODE   BRANCH_SECRETARIAT_CODE

        12                 333                 30
        13                 222                 31
Întrebat 26/07/2016 la 10:31
de către utilizator
În alte limbi...                            


1 răspunsuri

voturi
1

Puteți face acest lucru cu o subinterogare:

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
                        );

Nu este nevoie de un cursor pentru a face acest lucru. Pe de altă parte, un index pe table2(Employee_Number, BRANCH_SECRETARIAT_CODE)ar fi de mare ajutor.

Publicat 26/07/2016 la 10:35
sursa de către utilizator

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