注册 登录
编程论坛 SQL Server论坛

[求助]SQL里有没有格式化函数

C大少 发布于 2007-08-20 14:54, 2144 次点击
Format(1,"000") 结果是 001
SQL里便有没有和format一样的函数?
10 回复
#2
Kendy1234562007-08-20 15:50
没有

使用convert函数可以处理日期类型的显示格式和数值类型的特定几个显示格式
#3
gugu07922007-08-20 15:52

没有,自己做个函数

#4
C大少2007-08-20 15:57

怎么实现这个功能教教我

#5
西风独自凉2007-08-21 09:27
二楼已经说了。。。。。
用convert 这个函数
convert(varchar(3),1,'000')就可以了啊
#6
C大少2007-08-22 09:49

我试过不行 这个函数的第三个参数不是这么用的

[此贴子已经被作者于2007-8-22 9:53:24编辑过]

#7
西风独自凉2007-08-22 11:52
DECLARE @ID VARCHAR(1)
SET @ID=1
SELECT '00' + @ID
这样可以吗
#8
C大少2007-08-23 08:45

这样一位数的可以两位以上就不行了 谢谢你这么耐心帮忙想办法!

#9
Kendy1234562007-08-23 10:14

如果仅仅是格式化3位数字很好办

create function fn_Test
(
@ID varchar(3)
)

returns varchar(3)

as

declare @Ft_ID varchar(3)

select @Ft_ID = case when len(@ID) = 1 then '00'+@ID
when len(@ID) = 2 then '0' +@ID
else @ID end

return @Ft_id

#10
C大少2007-08-23 11:56

我想出一个方法
Right('000'+CAST(1 as varchar(3)),3)

#11
西风独自凉2007-08-23 15:04

因。。。不错。。。这样可以。。

1