天天看點

sql循環更新

 create table test_jumppoint

 as

select RELATED_RESFDN,up_to_device from g_vrms_node_jointbox where up_to_device != -1

select * from test_jumppoint

 create table test_TRANSO_NODE

 as

select a.RELATED_RESFDN, b.RELATED_POSITION_POINT from test_jumppoint a, G_VRMS_TRANSO_NODE  b where a.up_to_device = b.resfdn

select * from test_TRANSO_NODE

select * from G_VRMS_TRANSO_NODE

DECLARE P_INT NUMBER(38);

BEGIN

 P_INT := 1;

 FOR L_RECORD IN (select RELATED_RESFDN, RELATED_POSITION_POINT from test_TRANSO_NODE) LOOP

    UPDATE G_VRMS_TRANSO_NODE_bak0619

       SET RELATED_POSITION_POINT = L_RECORD.RELATED_POSITION_POINT

     WHERE resfdn = L_RECORD.RELATED_RESFDN;

    P_INT := P_INT + 1;

 END LOOP;

 END;