Những gì bạn muốn làm là sắp xếp các bản ghi trong các phân vùng. truy vấn để làm những gì bạn muốn là đây :
WITH sorted AS (
SELECT id, ROW_NUMBER() OVER(PARTITION BY ProductTypeId ORDER BY id ASC) as rownum
FROM product
)
UPDATE product
SET [order] = s.rownum
FROM product p
INNER JOIN sorted s on (p.id = s.id);