首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求教可以批量轮换指定字符串(含)后面的全部内容的sql写法

2013-01-08 
求教可以批量替换指定字符串(含)后面的全部内容的sql写法有一个表Table,其中Name字段中现有数据如下(长度

求教可以批量替换指定字符串(含)后面的全部内容的sql写法
有一个表Table,其中Name字段中现有数据如下(长度不定):

1aaabbbcccdd.1
12aaabbbccccd.ada
123aaabbbccc.8?
1234aaabbbcc.1

现在想批量替换aaabbb(含)及其后面的全部字符为空,只保留aaabbb前面的字符即可

请高手指教一下写法,非常感谢
[解决办法]


declare @string varchar(20)
set @string ='123aaabbb13482'
select stuff(@string,CHARINDEX ('aaabbb',@string),len(@string),'')


[解决办法]
if object_id('[TB]') is not null drop table [TB]
go
create table [TB] (col nvarchar(34))
insert into [TB]
select '1aaabbbcccdd.1' union all
select '12aaabbbccccd.ada' union all
select '123aaabbbccc.8?' union all
select '1234aaabbbcc.1'

select * from [TB]


SELECT SUBSTRING(col,0,CHARINDEX('aaabbb',col)) FROM dbo.TB
/*
1
12
123
1234*/

[解决办法]

update table 
set name=left(name,charindex('aaabbb',name)-1)

[解决办法]
select  substring(name,1,charindex('aaabbb',name) - 1)
[解决办法]
select SUBSTRING(name,0,charindex('aaabbb',name,1)) as name
from tablename
--更新:
update tablename set name= SUBSTRING(name,0,charindex('aaabbb',name,1))

热点排行