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

Istruzione SQL UPDATE per cambiare due valori in due righe

Se 'Peter' e 'Steve' sono unici nella tua tabella, questo farà:

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

o (migliorato da @Erwin):

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