sql >> Database teknologi >  >> RDS >> Sqlserver

SQL UPDATE-sætning for at skifte to værdier i to rækker

Hvis 'Peter' og 'Steve' er unikke i din tabel, vil dette gøre:

UPDATE TableX
SET ord = ( SELECT MIN(ord) + MAX(ord) 
            FROM TableX 
            WHERE name IN ('Peter', 'Steve')
          ) - ord
WHERE name IN ('Peter', 'Steve')

eller (forbedret af @Erwin):

UPDATE TableX
SET ord = ( SELECT SUM(ord) 
            FROM TableX 
            WHERE name IN ('Peter', 'Steve')
          ) - ord
WHERE name IN ('Peter', 'Steve')


  1. Hvordan kopierer jeg SQL Azure-databasen til min lokale udviklingsserver?

  2. Genskab Bad RAC Node

  3. Sammenkædning af en kolonne med en gruppe i R

  4. Visual Studio:ContextSwitchDeadlock