sql >> Databáze >  >> RDS >> Sqlserver

SQL Server:AKTUALIZUJTE tabulku pomocí příkazu ORDER BY

Ne.

Není to zdokumentovaný 100% podporovaný způsob. Existuje přístup, který se někdy používá pro výpočet průběžných součtů, nazývaný „nepředvídatelné aktualizace“, který naznačuje, že by se mohl aktualizovat v pořadí podle seskupeného indexu, pokud jsou splněny určité podmínky, ale pokud vím, tento se zcela spoléhá spíše na empirické pozorování než na jakoukoli záruku.

Ale jakou verzi SQL Serveru používáte? Pokud SQL2005+ můžete něco udělat s row_number a CTE (CTE můžete aktualizovat)

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


  1. Nastavení více datových center s PostgreSQL

  2. pracovat s json v oracle

  3. INT vs jedinečný identifikátor pro pole ID v databázi

  4. Jak zkontrolovat formát data vaší Oracle Session