В одну сторону с помощью оконной функции
UPDATE t
SET t.id =x.number
FROM (SELECT num,dense_rank() OVER(ORDER BY num) AS Number
FROM table) x
JOIN table t ON t.num = x.num
пример, который вы можете запустить
CREATE TABLE #test (id INT, num VARCHAR(100))
INSERT #test VALUES(1,'KP2')
INSERT #test VALUES(2,'KP3')
INSERT #test VALUES(3,'KP2')
INSERT #test VALUES(4,'KP3')
INSERT #test VALUES(5,'KP3')
UPDATE t
SET t.id =x.number
FROM (SELECT num,dense_rank() OVER(ORDER BY num) AS Number
FROM #test) x
JOIN #test t ON t.num = x.num
SELECT * FROM #test
1 KP2
2 KP3
1 KP2
2 KP3
2 KP3