首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

SQLSERVER 的格式化命令是什么?解决方案

2012-01-03 
SQLSERVER 的格式化命令是什么?在VB中,可以用FORMAT来把数字格式化为前导0:1--Format(1, 0000 )--0001

SQLSERVER 的格式化命令是什么?
在VB中,   可以用FORMAT来把数字格式化为前导0:

1   -->   Format(1, "0000 ")   -->   0001

那么在SQLSERVER怎么样把1格式化为 "0001 "?


[解决办法]
declare @iNum as int,@iLen as int
set @iLen = 4 --格式化字符的长度
set @iNum = 1

if @iLen - len(cast(@iNum as varchar)) > 0
begin
select REPLICATE( '0 ',@iLen - len(cast(@iNum as varchar))) + cast(@iNum as varchar)
end
else
begin
select @iNum
end

[解决办法]
SQL数据库中没有类似format这样的日期文本数字通用的格式化函数,不同的类型有不同的函数
你的这个要求可以变通解决,比如

select right( '0000 '+cast(1 as varchar(4)),4))
[解决办法]
case when len(cast(intVariant as varchar))> =4
then
cast(intVariant as varchar)
else
replicate( '0 ',4-len(cast(intVariant as varchar)))+cast(intVariant as varchar)
end

热点排行