Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SQL Server:АКТУАЛИЗИРАНЕ на таблица с помощта на ORDER BY

Не.

Не е документиран 100% поддържан начин. Има подход, който понякога се използва за изчисляване на текущи суми, наречен „странна актуализация“, който предполага, че може да се актуализира по ред на клъстериран индекс, ако са изпълнени определени условия, но доколкото знам, това разчита изцяло на емпирично наблюдение, а не на някаква гаранция.

Но на коя версия на SQL Server сте? Ако SQL2005+ може да сте в състояние да направите нещо с row_number и CTE (Можете да актуализирате 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

  2. SQL заявка бавна в .NET приложение, но мигновена в SQL Server Management Studio

  3. Завъртане на няколко колони въз основа на една колона в SQL Server

  4. Как да избегнете, че мониторът на активността вреди на производителността на вашия SQL сървър

  5. Ефективност на SQL сървъра — Тестване в облака