Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Pernyataan UPDATE:evaluasi ulang subquery setelah setiap SET

Coba gunakan pernyataan berikut. Tabel Anda tidak memungkinkan untuk mengidentifikasi baris misalnya dengan ID=2 jadi untuk menautkan tabel dengan ROW_NUMBER Anda dapat menggunakan 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




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PL/SQL dan skrip SQL dalam satu sqlFile dengan liquibase?

  2. Angkat pernyataan

  3. KESALAHAN pada baris 191:ORA-01489:hasil rangkaian string terlalu panjang

  4. Bagaimana menangani callableStatement.registerOutParameter(1, java.sql.Types.BOOLEAN);

  5. Apa yang setara dengan Oracle dari SET NOCOUNT ON SQL Server?