在数据库脚本中,如何将一个int类型转换为varchar(10)?

laolou_1983 2008-11-19 07:48:09
在数据库脚本中,如何将一个int类型转换为varchar(10)?请各位大牛指教,非常感谢!
...全文
302 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
linux_ch 2008-11-20
  • 打赏
  • 举报
回复


select replicate('0',10-len(column))+column
lc_ren2002 2008-11-20
  • 打赏
  • 举报
回复
那就要用case了,case length(column) when =10 else
hyde100 2008-11-20
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 laolou_1983 的回复:]
是前面补0,谢谢
[/Quote]
declare @i int
set @i='23435'

select right('0000000000'+cast(@i as varchar(10)),10)
结果:0000023435
laolou_1983 2008-11-20
  • 打赏
  • 举报
回复
是前面补0,谢谢
水族杰纶 2008-11-19
  • 打赏
  • 举报
回复
后面补0?
laolou_1983 2008-11-19
  • 打赏
  • 举报
回复
非常感谢上面大牛们的快速回答,如果想把转换出来的字符数对齐10位该怎么办?
水族杰纶 2008-11-19
  • 打赏
  • 举报
回复
declare @t table(num varchar(10))
insert @t select '123'
insert @t select 'ad'
insert @t select '456'
select cast(num as int) from @t where isnumeric(num)=1
/*
-----------
123
456

(所影响的行数为 2 行)*/
rucypli 2008-11-19
  • 打赏
  • 举报
回复
alter table 表名 alter column 列名 varchar(10)
  • 打赏
  • 举报
回复

declare @i int
set @i='23435'

select cast(@i as varchar(10))

23435
ws_hgo 2008-11-19
  • 打赏
  • 举报
回复
cast('inttype' as varchar(10))
  • 打赏
  • 举报
回复
cast ( 列名 as varchar(10))

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧