2 回答

TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超7個(gè)贊
可以通過functino來解決
代碼
use
TestDb
go
Create function GetTop4CharByPKID
(@PKID int)
returns nchar(4)
as
Begin
Declare @returnchar nchar(4)
set @returnchar=(select
case
when @PKID between 1 and 9 then '000'+cast(@PKID as nchar(4))
when @PKID between 10 and 99 then '00'+cast(@PKID as nchar(4))
when @PKID between 100 and 999 then '0'+cast(@PKID as nchar(4))
when @PKID between 999 and 9999 then '0'+cast(@PKID as nchar(4))
when @PKID >9999 then '....'
end
)
return @returnchar
end
go
select dbo.GetTop4CharByPKID(1) as Number
union all
select dbo.GetTop4CharByPKID(99) as Number
union all
select dbo.GetTop4CharByPKID(100) as Number
union all
select dbo.GetTop4CharByPKID(599) as Number
union all
select dbo.GetTop4CharByPKID(50229) as Number
執(zhí)行結(jié)果:
Number
0001
0099
0100
0599
....
- 2 回答
- 0 關(guān)注
- 551 瀏覽
添加回答
舉報(bào)