sql >> Base de Datos >  >> RDS >> Sqlserver

Actualice un campo de una tabla existente con Auto Increment Logic

Lo que quiere hacer es ordenar los registros dentro de las particiones. La consulta para hacer lo que quieras es esta :

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);