Oracle
 sql >> Database >  >> RDS >> Oracle

Istruzione UPDATE:rivaluta la sottoquery dopo ogni SET

Prova a usare la seguente affermazione. La tua tabella non consente di identificare una riga ad esempio con ID=2 quindi per collegare la tabella con ROW_NUMBER puoi utilizzare ROWID

UPDATE
Test 
SET id = (SELECT RN FROM
                     (SELECT ROW_NUMBER() 
                             OVER (ORDER BY ID) as RN 
                             FROM Test
                     ) T1
                     WHERE T1.RowID=Test.RowID
          )

Demo SQLFiddle