我有參加,我想考慮的情況下「LASTAvenant.CodeAvenant」 = 0:加入不同,這取決於條件
FROM Avenant BeforeLastAvenant
JOIN Avenant LASTAvenant ON LASTAvenant.CodeContrat =
BeforeLastAvenant.CodeContrat AND LASTAvenant.CodeAvenant > 0
AND LASTAvenant.CodeAvenant - 1 = BeforeLast.CodeAvenant
我使用這個連接的值LASTAvenant比較和BeforeLastAvenant如此條件「> 0」有意義(避免-1之後)。
有鑑於此,我將無法達到「CodeAvenant」 = 0,但我想它從歷史記錄表中的前一版本的本身進行比較。 根據「CodeAvenant」我想加入歷史上的表或表LASTAvenant。
我想這樣做:
JOIN Avenant LASTAvenant ON LASTAvenant.CodeContrat =
BeforeLastAvenant.CodeContrat AND IF LASTAvenant.CodeAvenant = 0
THEN (--here comes the tricky part I want to replace the
--table
'BeforeLastAvenant.CodeAvenant = HistorytableAvenant.CodeAvenant'
)
ELSE LASTAvenant.CodeAvenant = BeforeLastAvenant.CodeAvenant
我試圖儘可能清晰。
感謝那些爲我想,因爲我已經張貼。但不幸的是,我的sql請求更復雜,我認爲我可以使它更簡單。其實我HistoryTable有一列比別人我不能直接加入,但選擇所有ecxept一個列多。所以你的解決方案應該可行 –
我很高興伯努瓦..快樂編碼 - :) .. –