티스토리 뷰

--TEMP_KEY 컬럼 IDX 컬럼 추가 후
--TEMP_KEY 컬럼에 NEWID() 업데이트 진행

UPDATE TABLE SET TEMP_KEY = NEWID()

--TEMP_KEY에 중복값이 들어갔는지 확인

SELECT TEMP_KEY,COUNT(*) FROM TABLE GROUP BY TEMP_KEY HAVING COUNT(*) > 1

--없으면 다음 작업 진행

DECLARE @i int,@SID VARCHAR(100)

SET  @I = 1;
WHILE (select COUNT(*) from TABLE where IDX is null) > 0
BEGIN
 SELECT TOP 1 @SID = TEMP_KEY FROM TABLE WHERE IDX IS NULL

UPDATE TABLE SET IDX = @I
 WHERE TEMP_KEY = @SID

SET  @i = @i + 1;
 
END
만건 처리하는데 20분정도 요소~

'serverSide > MSSQL' 카테고리의 다른 글

CPU 점유율 확인 쿼리  (0) 2015.07.01
[MSSQL2005] 테이블 Insert Script 생성  (0) 2015.06.04
[MSSQL2005]누적 합 구하기  (1) 2015.01.30
[MSSQL] 테이블별 용량 row수  (0) 2014.09.10
[MSSQL2005] DB 전체 검색  (0) 2014.09.05
댓글