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

Sử dụng đầu ra để đặt một biến trong câu lệnh hợp nhất

Không, bạn phải sử dụng biến bảng với OUTPUT

Tuy nhiên, bạn có thể làm điều này ...

...
WHEN MATCHED THEN 
    UPDATE
    SET
       @int = ID,
       somecolumn = 'something'
WHEN NOT MATCHED THEN
    INSERT 
    VALUES ('stringtomatch',
        'something');

SET @int = ISNULL(@int, SCOPE_IDENTITY());

"chỉ định trong CẬP NHẬT" đã là một cú pháp hợp lệ cho SQL Server trong một thời gian dài. Xem MERGE trên MSDN cũng vậy. Cả hai đều nói điều này:




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sửa đổi bảng:Cách thay đổi thuộc tính 'Allow Nulls' từ không null thành cho phép null

  2. Làm cách nào để chuyển đổi từ kiểu dữ liệu tiền trong máy chủ SQL?

  3. Tạo truy vấn trong SQL Server 2017

  4. Cách thay đổi màu và phông chữ trong SQL Server Management Studio (SSMS) - Hướng dẫn SQL Server / TSQL Phần 12

  5. Coldfusion:Xử lý giá trị Null trong Trường ngày