下面功能如果实现,急! select replace('**_***/**_**','/','_')replace()可以实现. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 update t set col = substring(col,1,6)+'/'+substring(col,8,2)+'_'+substring(col,11,2) To libin_ftsafe(子陌红尘) 你有没有看题,*表示任意n个英文字母To aw511(点点星灯) :你根本没有看懂我的意思 试试这样呢:declare @strC varchar(4000)select replace(@strC,'/','_')select replace(@strC,'_***_**_','_***/**_')没测过支持通配符,不行的话就用charindex()了。 update tableset col=stuff(stuff(col,7,1,'/'),10,1,'_')如果一部分是正确的。可以加个where条件。只更新错误的数据。 declare @tb table([字段] varchar(50))insert @tbselect 'ab_cdefg_sdfg_sldfnk' unionselect 'adr_dfdsf_sdv/sdfds' unionselect 'skds_sdfd/sdfds_sdfds'--形式:**_***_**_**update @tb set [字段]=left([字段],charindex('_',stuff([字段],charindex('_',[字段]),1,'')))+ '/'+ right([字段],len([字段])-1-charindex('_',stuff([字段],charindex('_',[字段]),1,'')))where charindex('/',[字段])=0select * from @tb--形式:**_***_**/** update @tb set [字段]=replace([字段],'/','_')where charindex('/',reverse([字段]))<charindex('_',reverse([字段]))update @tb set [字段]=left([字段],charindex('_',stuff([字段],charindex('_',[字段]),1,'')))+ '/'+ right([字段],len([字段])-1-charindex('_',stuff([字段],charindex('_',[字段]),1,'')))where charindex('/',reverse([字段]))<charindex('_',reverse([字段]))select * from @tb--结果/*原来的:ab_cdefg/sdfg_sldfnkadr_dfdsf_sdv/sdfdsskds_sdfd/sdfds_sdfds(所影响的行数为 3 行)修改后的:ab_cdefg/sdfg_sldfnkadr_dfdsf/sdv_sdfdsskds_sdfd/sdfds_sdfds(所影响的行数为 3 行)*/ 怎么用结果集填充临时表 这个sql怎么写??/急 两个表关联查询。送分题 为何SQL启动后又马上停止? 没用过存储过程,下面的asp代码用存储过程怎么写? 关于存储过程及参数化SQL的漏洞-请高手不吝赐教 Oracle的自增字段如果设计 db2 能否返回一个result sets ? 有没有infomix高手,欲建立长期联系,请多多指教! 表数据删除超时问题 求个SQL语句 一句SQL求写法
To aw511(点点星灯) :你根本没有看懂我的意思
declare @strC varchar(4000)
select replace(@strC,'/','_')
select replace(@strC,'_***_**_','_***/**_')
没测过支持通配符,不行的话就用charindex()了。
set col=stuff(stuff(col,7,1,'/'),10,1,'_')
如果一部分是正确的。可以加个where条件。只更新错误的数据。
insert @tb
select 'ab_cdefg_sdfg_sldfnk' union
select 'adr_dfdsf_sdv/sdfds' union
select 'skds_sdfd/sdfds_sdfds'--形式:**_***_**_**
update @tb
set [字段]=left([字段],charindex('_',stuff([字段],charindex('_',[字段]),1,'')))+
'/'+
right([字段],len([字段])-1-charindex('_',stuff([字段],charindex('_',[字段]),1,'')))
where charindex('/',[字段])=0select * from @tb--形式:**_***_**/**
update @tb
set [字段]=replace([字段],'/','_')
where charindex('/',reverse([字段]))<charindex('_',reverse([字段]))update @tb
set [字段]=left([字段],charindex('_',stuff([字段],charindex('_',[字段]),1,'')))+
'/'+
right([字段],len([字段])-1-charindex('_',stuff([字段],charindex('_',[字段]),1,'')))
where charindex('/',reverse([字段]))<charindex('_',reverse([字段]))
select * from @tb--结果
/*
原来的:
ab_cdefg/sdfg_sldfnk
adr_dfdsf_sdv/sdfds
skds_sdfd/sdfds_sdfds(所影响的行数为 3 行)
修改后的:ab_cdefg/sdfg_sldfnk
adr_dfdsf/sdv_sdfds
skds_sdfd/sdfds_sdfds(所影响的行数为 3 行)
*/