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

Cập nhật hàng trong bảng dựa trên truy vấn phụ trên cùng một bảng

Cách đơn giản nhất để làm điều này là

UPDATE tableA
SET    date5 = (SELECT MAX(D)
                FROM   (VALUES(date1),
                              (date2),
                              (date3),
                              (date4)) T(D))  

Hoặc (như bây giờ bạn đã thêm thẻ 2005)

UPDATE tableA
SET    date5 = (SELECT MAX(D)
                FROM   (SELECT date1 UNION ALL
                        SELECT date2 UNION ALL
                        SELECT date3 UNION ALL
                        SELECT date4) T(D))  


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hiệu suất đếm SQL (*)

  2. Chèn hình ảnh vào cơ sở dữ liệu SQL Server 2008 Express mà không cần ứng dụng giao diện người dùng

  3. Lỗi cơ sở dữ liệu:Không có hàng nào ở vị trí 0

  4. Nhóm kết hợp trong SQL Server

  5. Cách lấy tất cả nhật ký giao dịch (chèn xóa cập nhật) cho một bảng cụ thể trong SQL Server 2008