연구개발/DBA

데이터 분할하여 업데이트 / 데이터 끊어서 업데이트

HEAD1TON 2010. 7. 6. 16:55

--전체 데이터를 10000건씩 분할하여 업데이트
DECLARE @ROWS int
SET @ROWS = 10000;
UPDATE TOP(@ROWS) LargeTabAddNotNullCol SET NotNullCol = 'default value'
WHERE NotNullCol IS NULL;

WHILE @@ROWCOUNT = 10000
BEGIN
    UPDATE TOP (@ROWS) LargeTabAddNotNullCol
        SET NotNullCol = 'default value'
    WHERE NotNullCol IS NULL; 
END
GO