Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Câu lệnh SQL UPDATE để chuyển hai giá trị thành hai hàng

Nếu 'Peter''Steve' là duy nhất trong bảng của bạn, điều này sẽ thực hiện:

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

hoặc (được cải thiện bởi @Erwin):

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SqlServer:Đăng nhập không thành công cho người dùng

  2. Chuyển đổi ngày và văn hóa:Sự khác biệt giữa DATE và DATETIME

  3. Lỗi “Không thể thả trình kích hoạt” khi Cố gắng thả Trình kích hoạt đăng nhập? Thử cái này.

  4. Cách thay thế các giá trị (null) bằng đầu ra 0 trong PIVOT

  5. Cấp quyền truy cập người dùng msdb vào hồ sơ thư cơ sở dữ liệu trong SQL Server (T-SQL)