DECLARE @weekDayCounter int = 7;
SELECT @weekDayCounter 1
--returns 8
問題是如何在@weekDayCounter不撰寫 case 或 if 陳述句的情況下將 T-SQL視為作業日數字?
我想知道是否有辦法將CONVERT/CASTint 轉換為作業日資料型別,或者有一個數字系列在超過最大數字時重置為第一個數字(例如 12 月 31 日 1 天 = 1 月 1 日而不是 12 月 32 日或23:59 1 小時 = 00:59 不是 24:59)
所以
SELECT @weekDayCounter 1 --returns 1
任何答案表示贊賞!
uj5u.com熱心網友回復:
如果您只想在每次超過 7 時將數字換回 1,那么一種選擇是:
SELECT @weekDayCounter - (7 * FLOOR(@weekDayCounter/7)) 1
它只是減去 7 *(7 進入@weekDayCounter 的次數)
uj5u.com熱心網友回復:
如果你只是想在區域中遞增的值1通過7,你可以使用模運算子:
set @WeekDayCounter = @WeekDayCounter % 7 1;
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/380113.html
