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

Cập nhật giá trị cột null từ giá trị không null trong hàng trước đó

Còn điều này thì sao?:

;WITH CTE AS (
SELECT GID, SEQ, Name, Salary
FROM @Test t1
WHERE SEQ = (SELECT MIN(SEQ) FROM @Test t2 WHERE t2.GID = t1.GID)
UNION ALL
SELECT t.GID, t.SEQ, COALESCE(t.Name,c.Name), COALESCE(t.Salary,c.Salary)
FROM CTE c
JOIN @Test t ON t.GID = c.GID AND t.SEQ = c.SEQ+1
)
UPDATE t SET 
    Name = c.Name,
    Salary =  c.Salary
FROM @Test t
JOIN CTE c ON c.GID = t.GID AND c.Seq = t.SEQ


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server Intellisense không hoạt động trên * một số * máy chủ

  2. Cách đặt Tên ứng dụng trong chuỗi kết nối ADODB

  3. Làm thế nào để tránh các giá trị trùng lặp cho INSERT trong SQL?

  4. Chuyển đổi SQL Server chọn một cột và chuyển đổi nó thành một chuỗi

  5. Xử lý thứ nguyên SSAS làm cho các biện pháp cơ bản không được xử lý