我需要转换
1
12
145
to(我使用S代表SPACE)
SSSS1
SSS12
SS145
如果我使用CAST (VALUE as CHAR(5))
,我会
1SSSS
12SSS
145SS
如何执行该操作?
答案 0 :(得分:2)
RIGHT(' ' + CAST (VALUE as VARCHAR(5)), 5)
更一般地说:
DECLARE @PadTo tinyint;
SET @PadTo = 5;
SELECT
RIGHT(REPLICATE(' ', @PadTo) + CAST(VALUE as VARCHAR(255)), @PadTo)
...
答案 1 :(得分:2)
答案 2 :(得分:2)
declare @T table(Value int)
insert into @T values (1),(12),(145)
select right(stuff(Value, 1, 0, space(5)), 5)
from @T
答案 3 :(得分:2)
SELECT STR(N,5)
FROM (VALUES (1),(12),(145)) T(N)
返回
-----
1
12
145