代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
MSSQL
】
判断两个字符串是否存在相同的内容
作者:
/ 发布于
2018/5/12
/
972
-- ============================================= -- Author: wuchaorang -- Create date: 2010-12-22 -- Description: 判斷兩個字符串是否存在相同的內容(查找@newSplit中是否有相同的字符串存在于@orginSplit中) -- Debug:select dbo.fun_charindex('a,b,c,d','d',',') or select dbo.fun_charindex('a,b,c','b,',',') --返回: 存在返回1,否則返回0 -- ============================================= ALTER function fun_charindex ( @orginSplit varchar(4000),--原始值 @newSplit varchar(4000),--需要判斷的值 @speaterString varchar(20)--分隔符 ) returns smallint as begin declare @val smallint,@i int,@helpSplit varchar(4000) set @val=0 set @newSplit=rtrim(ltrim(@newSplit)) set @speaterString=rtrim(ltrim(@speaterString)) set @orginSplit=rtrim(ltrim(@orginSplit)) if left(@orginSplit,len(@speaterString))<>@speaterString set @orginSplit=@speaterString+@orginSplit if right(@orginSplit,len(@speaterString))<>@speaterString set @orginSplit=@orginSplit+@speaterString if @newSplit='' return @val if charindex(@speaterString,@newSplit)=0 begin --或者改成set @helpSplit=replace(@orginSplit,@speaterString+@newSplit+@speaterString,'') -- if len(@speaterString+@newSplit+@speaterString)+len(@helpSplit)=len(@orginSplit) set @helpSplit=@speaterString+@newSplit+@speaterString if patindex('%'+@helpSplit+'%',@orginSplit)>0 set @val=1 end else begin if right(@newSplit,len(@speaterString))<>@speaterString set @newSplit=@newSplit+@speaterString set @i=charindex(@speaterString,@newSplit) while @i>0 begin if rtrim(ltrim(left(@newSplit,@i-1)))='' begin set @newSplit=SUBSTRING(@newSplit,@i+1,LEN(@newSplit)-@i) set @i=CHARINDEX(@speaterString,@newSplit) continue end set @helpSplit=@speaterString+rtrim(ltrim(left(@newSplit,@i-1)))+@speaterString --或者改成 len(@helpSplit)+len(replace(@orginSplit,@helpSplit,''))=len(@orginSplit) if patindex('%'+@helpSplit+'%',@orginSplit)>0 begin set @val=1 break end set @newSplit=SUBSTRING(@newSplit,@i+1,LEN(@newSplit)-@i) set @i=CHARINDEX(@speaterString,@newSplit) end end return @val end 实例: select dbo.fun_charindex('aa,bb,cc,dd','b,b,cc',',') 存在则返回1,否则返回0
试试其它关键字
同语言下
.
SQL查询 多列合并成一行用逗号隔开
.
查看存储过程修改时间,最近执行时间
.
设置手动批量删除数据库相关进程
.
获取某个表中特定字段的所有字符串形式
.
SQL 如何去除重复的字符串
.
怎么去掉一个字段中的重复数据
.
String 去除空格 回车 换行 水平制表符
.
SQL查询和替换含有回车,空格,TAB
.
SQL SERVER 查询每日新增用户数量、次留数量
.
判断两个字符串是否存在相同的内容
可能有用的
.
SQL查询 多列合并成一行用逗号隔开
.
查看存储过程修改时间,最近执行时间
.
设置手动批量删除数据库相关进程
.
获取某个表中特定字段的所有字符串形式
.
SQL 如何去除重复的字符串
.
怎么去掉一个字段中的重复数据
.
String 去除空格 回车 换行 水平制表符
.
SQL查询和替换含有回车,空格,TAB
.
SQL SERVER 查询每日新增用户数量、次留数量
.
判断两个字符串是否存在相同的内容
贡献的其它代码
Label
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3