TABLE 1 : 컬럼 - A,B,C,D,E,F / 1억 5천만
TABLE 2 : 컬럼 - D,E / 7백만
안녕하세요 현재 저한텐 위와같은 테이블이 두개가 있는데요,
TABLE 1 같은 경우는 D가 중복된 row를 다량 갖고 있습니다.
그리고 D 컬럼의 각각의 값들에 대해 E는 고유한 값을 갖고 있습니다.
근데 제가 TABLE 1을 생성할 때, 잘못 입력해서 E값들이 다 잘못 들어갔습니다.
TABLE 2는 알맞은 D와 E값이 들어가 있는 상태이구요..
TABLE 1에 E값을 알맞은 값으로 수정하기 위해서
INNER JOIN을 사용할까.. 하는데 대략적인 시간을 파악할 방법이 있거나
혹은 더 좋은 방법이 있을까요 ?
Drop here!
1억건을 한꺼번에 업데이트 시킬때 락 문제가 발생할듯 합니다.
루프를 돌려 나눠서 업데이트를 하시면
declare @num int
set @num = 0
set rowcount 10000
while @num <= 15000
begin
set @num = @num + 1
select @num
--update a set a.E = b.E from TABLE1 a join TABLE2 b join a.D = b.D and a.E <> b.E ;
end
set rowcount 0