0

如何在 sql server 中用 / 后 3 个数字拆分 10000 之类的数字。

所以输出应该像

 `100/00`
4

2 回答 2

0

您可以使用下面的查询。它会检查您是否有至少 3 位数字来返回拆分号码,或者按原样返回号码(随意调整)。

declare @number as int = 1000
select case
    when LEN(cast(@number as varchar(100))) > 3 then SUBSTRING(cast(@number as varchar(100)), 1, 3) + '/' + SUBSTRING(cast(@number as varchar(100)), 4, LEN(cast(@number as varchar(100))) - 3)
    else cast(@number as varchar(100))
end
于 2013-11-04T03:22:27.563 回答
0

它仍然需要 CASE 如下:

SELECT CASE WHEN LEN (@number) > 3 THEN STUFF(@number, 4, 0, '/') ELSE CONVERT (VARCHAR, @number) END;

否则它将返回 NULL 且 LEN (@number) <= 3。顺便说一下,它是斜杠而不是反斜杠。

于 2013-11-04T03:57:49.287 回答