2016-12-07 42 views
0

我有包含三個日期字段(開始日期,結束日期,PAYMENTDATE)SQL服務器更新的日期值,以便它們都大於或等於其他日期值

目前的數據表中的一個表是亂的,其中的結束日期可以在StartDate之前,並且PaymentDate可以在StartDate之前。

有沒有辦法來轉換的日期,以便它們滿足以下約束 起始日期不能等於或大於結束日期 PAYMENTDATE更大的不能低於結束日期

當前數據的丟失是無關緊要的,只要因爲新值符合要求。

回答

0

將它們設置爲null

UPDATE [table] SET EndDate=NULL WHERE StartDate>EndDate 
UPDATE [table] SET PaymentDate=NULL WHERE EndDate>PaymentDate 

將它們設置爲最低可接受

UPDATE [table] SET EndDate=StartDate WHERE StartDate>EndDate 
UPDATE [table] SET PaymentDate=EndDate WHERE EndDate>PaymentDate 
+0

底部的選項最適合我,因爲日期字段不能爲空。 謝謝你的回答! – Begotten

相關問題