SQL里如何删除连续重复字符串重复的字符串

sql函数实现去除字符串中的相同的字符串
字体:[ ] 类型:转载 时间:
去除字符串中的相同的字符,此功能在开发过程中很实用,为此本文整理了一些,希望对你了解它有所帮助
代码如下: ---去除字符串中重復的值函數 create function StringRemove(@str nvarchar(2000)) returns varchar(2000) as begin declare @result nvarchar(2000),@temp nvarchar(1000) set @result='' set @temp='' while(charindex(',',@str)&&0) begin set @temp=substring(@str,1,charindex(',',@str)) if(charindex(@temp,@result)&=0) set @result=@result+@temp set @str=stuff(@str,1,charindex(',',@str),'') end return @result end GO --('塗聚文','塗','塗聚文','1','23','1') --測試 select dbo.StringRemove('塗聚文,塗,塗聚文,1,23,1')
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具sql函数实现去除字符串中的相同的字符串_mssql,sql server_ThinkSAAS
sql函数实现去除字符串中的相同的字符串
sql函数实现去除字符串中的相同的字符串
内容来源: 网络
代码如下: ---去除字符串中重?偷闹岛? create function StringRemove(@str nvarchar(2000)) returns varchar(2000) as begin declare @result nvarchar(2000),@temp nvarchar(1000) set @result='' set @temp='' while(charindex(',',@str)&&0) begin set @temp=substring(@str,1,charindex(',',@str)) if(charindex(@temp,@result)&=0) set @ set @str=stuff(@str,1,charindex(',',@str),'') end return @result end GO --('?T聚文','?T','?T聚文','1','23','1') --?y? select dbo.StringRemove('?T聚文,?T,?T聚文,1,23,1')
PHP开发框架
开发工具/编程工具
服务器环境
ThinkSAAS商业授权:
ThinkSAAS为用户提供有偿个性定制开发服务
ThinkSAAS将为商业授权用户提供二次开发指导和技术支持
让ThinkSAAS更好,把建议拿来。
开发客服微信将字符串中的重复字符剔除_mssql,sql server_ThinkSAAS
将字符串中的重复字符剔除
将字符串中的重复字符剔除
内容来源: 网络
数据库环境:SQL SERVER2008R2
在网上看到一网友提的需求,要求把字符串列中的重复字符剔除,只保留一个。我简单的把需求描述下,
比如,有一个t表,A1列存字符串,存储的内容如下:
A,B,B,C
C,C,D
F,S,S
剔除重复字符后的结果如下:
A,B,C
思路:每一行记录生成一个行号,把字符串中的字符全部存到一列,根据行号和字符去重,然后再用FOR XML PATH合并到一行
/*数据准备*/
AS ( SELECT
1 AS id ,
&A,B,B,C& AS A1
UNION ALL
2 AS id ,
&C,C,D& AS A1
UNION ALL
3 AS id ,
&F,S,S& AS A1
),/*将所有字符转存一列,去重*/
AS ( SELECT
DISTINCT
a.id ,
SUBSTRING(a.A1, b.number,
CHARINDEX(&,&, a.A1 + &,&, b.number)
- b.number) AS A1
x0 a ,
master..spt_values b
b.number &= 1
AND b.number &= LEN(a.A1)
AND b.type = &P&
AND SUBSTRING(&,& + a.A1, b.number, 1) = &,&
/*根据原先的行号,把行号相同的转回到一行上*/
LEFT(A1, LEN(A1) - 1) AS A1
a.A1 + &,&
a.id = b.id
XML PATH(&&)
) AS A1
SQL比较好理解,并加了一些注释,这里不再重复。
PHP开发框架
开发工具/编程工具
服务器环境
ThinkSAAS商业授权:
ThinkSAAS为用户提供有偿个性定制开发服务
ThinkSAAS将为商业授权用户提供二次开发指导和技术支持
让ThinkSAAS更好,把建议拿来。
开发客服微信sql="update Table set
字段= ( 字段,'123' , ' ') where 条件"把字段中123替换为空格
阅读(...) 评论()

我要回帖

更多关于 删除连续重复字符串 的文章

 

随机推荐