去掉前导0

ljfblog 2012-03-09 11:33:34
01
002
0003333A
怎么去掉前面的所有0呢?
...全文
279 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
勿勿 2012-03-09
  • 打赏
  • 举报
回复
create table tb(col varchar(20))
insert into tb values('01')
insert into tb values('002')
insert into tb values('0003333A')
go

update tb
set col = replace(col,'0','')
select * from tb
drop table tb



col
--------------------
1
2
3333A

(3 行受影响)
dawugui 2012-03-09
  • 打赏
  • 举报
回复
create table tb(col varchar(20))
insert into tb values('01')
insert into tb values('002')
insert into tb values('0003333A')
go

select substring(col , PATINDEX('%[^0]%',col) , len(col)) from tb

drop table tb

/*

--------------------
1
2
3333A

(所影响的行数为 3 行)
*/
AcHerat 2012-03-09
  • 打赏
  • 举报
回复

update tb
set col = stuff(col,1,patindex('%[^0]%',col)-1,'')
where left(col,1) = 0
唐诗三百首 2012-03-09
  • 打赏
  • 举报
回复

create table ljf
(c varchar(15))

insert into ljf
select '01' union all
select '002' union all
select '0003333A'

update ljf
set c=substring(c,
patindex('%[^0]%',c),
len(c)-patindex('%[^0]%',c)+1)


select * from ljf

c
---------------
1
2
3333A

(3 row(s) affected)
老猫五号 2012-03-09
  • 打赏
  • 举报
回复
update A
set m = replace(m,'0','')

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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