日期:2014-05-19  浏览次数:20731 次

字符串截取转换问题,请各位达淫踊跃发言
表a中有n条数据
其中一字段tt的数据为                           123@,1221424@,1223@,234334@
这n条数据的tt字段内容形式相同,长度不同
如何写条语句把这n条数据都转换成     @123,@1221424,@1223,@234334
先拜谢啦


------解决方案--------------------
update 表a set tt= '@ '+left(replace(tt, '@, ', ',@ '),len(tt)-1)
------解决方案--------------------
declare @s varchar(50)

set @s= '123@,1221424@,1223@,234334@ '

select '@ '+left(replace(@s, '@, ', ',@ '),len(@s)-1)

--结果
------------------------
@123,@1221424,@1223,@234334

(所影响的行数为 1 行)

------解决方案--------------------
Declare @TT Varchar(1000)
Select @TT = '123@,1221424@,1223@,234334@ '
Select @TT = '@ ' + Replace(Replace(@TT , '@ ' , ' '), ', ' , ',@ ')
Select @TT
--Result
@123,@1221424,@1223,@234334

------解决方案--------------------
update a set tt=substring(tt,charindex( '@ ',tt),1)+left(tt,charindex( '@ ',tt)-1)
------解决方案--------------------
drop table a
create table a
(
tt varchar(1000)
)
GO
insert into a
select '123@,1221424@,1223@,234334@@ '
union all
select '1233@,12123@,12121234@,23412542@ '
union all
select '11123@,1231@,112412134@,23425142@ '
GO

update a set tt= '@ '+left(replace(tt, '@, ', ',@ '),len(tt)-1)

select * from a

------------------------
@123,@1221424,@1223,@234334@
@1233,@12123,@12121234,@23412542
@11123,@1231,@112412134,@23425142