2012-12-17 19 views
18

Aşağıdaki görüntüdeki önemli noktalar uygulamak istediğim mantığı gösterir. Sözdiziminin yanlış olduğunu anlıyorum.MERGE - koşullu "Son Güncelleme Geçmişi"

Yalnızca bir hedef satırındaki sütunlarından birinin değeri NULL ise ve kaynak tabloda karşılık gelen değer boş değilse, bir MERGE deyimindeki bir kaydı koşullu olarak güncelleştirmenin bir yolu var mı?

Bunu yeniden nasıl yazmanızı önerirsiniz?

enter image description here

+0

Bu kod resim olarak – Liam

cevap

39

Sen When Matched And (s.[Created Date] Is Not Null And t.[Created Date] Is Null) Then Update ... kullanmak mümkün olabilir.

+3

+1 olarak kod olarak biçimlendirilmeli ve tam bir örnek için Örnek B'ye bakınız: http://technet.microsoft.com/en-us/library/bb510625.aspx –

+0

Teşekkürler cevap için @Laurence. –

+0

Bir [takip eden soru] yayınladım (http://stackoverflow.com/questions/13924973/merge-update-column-values-separately-based-on-logic-in-when-matched-block). Bu cevabı doğru olarak kabul edebilmem için ayrı bir gönderi yaptım ve bir sonraki soruma bir cevap verdim (eğer bir tane almak için yeterince şanslıysam) –