2012-12-17 31 views
18

Điểm nổi bật trong hình ảnh dưới đây cho thấy logic tôi muốn thực hiện. Tôi nhận ra cú pháp là không chính xác.MERGE - có điều kiện "WHEN MATCHED THEN UPDATE"

Có cách nào để có điều kiện cập nhật bản ghi trong câu lệnh MERGE chỉ khi giá trị của một trong các cột trong bảng mục tiêu là NULL và giá trị tương ứng trong bảng nguồn không phải là rỗng?

Bạn đề xuất viết lại nội dung này bằng cách nào?

enter image description here

+0

Mã này phải được định dạng dưới dạng mã, không phải là hình ảnh – Liam

Trả lời

39

Bạn có thể có thể sử dụng When Matched And (s.[Created Date] Is Not Null And t.[Created Date] Is Null) Then Update ....

+3

+1 và xem Ví dụ B ở đây để có ví dụ hoàn chỉnh: http://technet.microsoft.com/en-us/library/bb510625.aspx –

+0

Cảm ơn cho câu trả lời, @Laurence. –

+0

tôi đã đăng một [câu hỏi tiếp theo] (http://stackoverflow.com/questions/13924973/merge-update-column-values-separately-based-on-logic-in-when-matched-block). tôi đã tạo một bài đăng riêng biệt để tôi có thể thừa nhận câu trả lời này là chính xác, cũng như câu trả lời cho câu hỏi tiếp theo của tôi (nếu tôi đủ may mắn để có được một câu trả lời) –

Các vấn đề liên quan