0
我確定有一個更優雅的(或者簡單地說是「正確的」)方法來完成我想要實現的目標。我相信我需要使用光標,但不能完全包圍我的頭如何。幫助在tSQL中創建遊標
我有下面的代碼找到留在合同的日子,但除非我把「其中」條款(這基本上是選擇一個特定的記錄),我收到此錯誤信息:
「子查詢返回多個值'
這就是爲什麼我認爲我需要一個遊標;循環查看記錄,並更新合同中剩餘天數的字段。
這是我所擁有的,它在儘可能多地返回一個數字。
DECLARE @TodaysDT date = GetDate()
DECLARE @ContractExpirationDT date =
(SELECT ExprDt from CONTRACTS
WHERE ID = 274);
DECLARE @DaysRemaining INT =
(SELECT DATEDIFF(dd, @ContractExpirationDT,@TodaysDT));
Print @DaysRemaining;
這將返回一個特定的記錄ID的正確值(這種情況下,ID 274)
如何使用一個光標到步驟通過每個記錄,然後在與所述每個記錄更新的字段@DaysRemaining
值?
謝謝你的時間!