Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

como definir o valor da coluna igual à linha não?


Se você tentar ATUALIZAR uma coluna diretamente usando ROW_NUMBER(), você obterá...

...então INNER JOIN a tabela para si mesma...
UPDATE
    [test123]
SET
    [row_number] = [x].[rn]
FROM
    [test123]
INNER JOIN
    (
        SELECT
            [test_id],
            ROW_NUMBER() OVER (ORDER BY [test_id]) AS rn
        FROM
            [test123]
    ) AS x
ON 
    [test123].[test_id] = [x].[test_id]