首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在SQL中使用格式化将数字转换为varchar

在SQL中使用格式化将数字转换为varchar
EN

Stack Overflow用户
提问于 2009-11-20 00:01:50
回答 8查看 108.5K关注 0票数 19

在T-SQL中有没有一种方法可以将TINYINT转换为具有自定义数字格式的VARCHAR?例如,我的TINYINT的值为3,我希望将其转换为VARCH值03,以便它始终显示一个2位数字。

我在CONVERT函数中看不到这种能力。

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2009-11-20 00:04:44

代码语言:javascript
复制
RIGHT('00' + CONVERT(VARCHAR, MyNumber), 2)

需要注意的是,这将使数字大于99。您可能希望将这种可能性考虑在内。

票数 32
EN

Stack Overflow用户

发布于 2009-11-20 00:05:41

使用正确的函数...例如:

代码语言:javascript
复制
DECLARE @testnum TINYINT
SET @testnum = 3
PRINT RIGHT('00' + CONVERT(VARCHAR(2), @testnum), 2)
票数 4
EN

Stack Overflow用户

发布于 2009-11-20 00:08:36

你可以试试这个

代码语言:javascript
复制
DECLARE @Table TABLE(
        Val INT
)

INSERT INTO @Table SELECT 3
INSERT INTO @Table SELECT 30

DECLARE @NumberPrefix INT
SET @NumberPrefix = 2
SELECT  REPLICATE('0', @NumberPrefix - LEN(Val)) + CAST(Val AS VARCHAR(10))
FROM    @Table
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1764374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档