Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

SQL Server:UPDATE tabel dengan menggunakan ORDER BY

Tidak.

Bukan cara yang didukung 100% yang terdokumentasi. Ada pendekatan yang kadang-kadang digunakan untuk menghitung total berjalan yang disebut "pembaruan unik" yang menunjukkan bahwa itu mungkin memperbarui dalam urutan indeks berkerumun jika kondisi tertentu terpenuhi tetapi sejauh yang saya tahu ini sepenuhnya bergantung pada pengamatan empiris daripada jaminan apa pun.

Tapi versi SQL Server apa yang Anda gunakan? Jika SQL2005+ Anda mungkin dapat melakukan sesuatu dengan row_number dan CTE (Anda dapat memperbarui CTE)

With cte As
(
SELECT id,Number,
ROW_NUMBER() OVER (ORDER BY id DESC) AS RN
FROM Test
)
UPDATE cte SET Number=RN


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server UNION - Apa ORDER BY Behavior default?

  2. Pernyataan SQL GROUP BY CASE dengan fungsi agregat

  3. Perbarui beberapa kolom dalam SQL

  4. SQL Server:jumlah maksimum baris dalam tabel

  5. Rencana eksekusi SQL Server — apa itu dan bagaimana itu membantu masalah kinerja?