使用javascript的数组来计算,代码如下:
复制代码 代码如下:
use tempdb
go
if (object_id ('fn_getArray' ) is not null )
drop function dbo . fn_getArray
go
create function fn_getArray (@ inStr1 varchar (8000 ), @ inStr2 varchar (8000 ))
returns varchar (8000 )
as
begin
declare @ str varchar (8000 )
set @ str = '
var a = [''' + replace (@ inStr1 , ',' , ''',''' )+ '''];
var b = [''' + replace (@ inStr2 , ',' , ''',''' )+ '''];
var c=""
for (var i=0;i<a.length;i++)
{
for (var j=0;j<b.length;j++)
{ if(a[i]==b[j]&&c.indexOf(a[i])<0)
c+=a[i]+","
}
}
'
declare @ object int
declare @ r varchar (800 )
exec sp_OACreate 'MSScriptControl.ScriptControl' , @ object output
exec sp_OASetProperty @ object , 'Language' , 'javascript'
exec sp_OAMethod @ object , 'eval' , @ r out , @ str
return @ r
end
go
select dbo . fn_getArray ('abc,dced,f23e,gew432' , '23c,abc,f23e,geafd,ged' )
/* 输出
abc,f23e,
*/

更多相关文章

  1. android 中使用TextView实现分段显示不同颜色的字符串
  2. exp: 修改Android中strings.xml文件, 动态改变数据
  3. Android(安卓)中数据库查询方法 query() 中的 select
  4. android中SqLite query中用selectionArgs处理字符传值
  5. 修改系统Android版本,版本号
  6. 获取Android系统信息
  7. android 解析xml字符串
  8. android 解析xml字符串
  9. android 根据TextView宽度 自动缩小字体大小 以适应其宽度

随机推荐

  1. c语言文件读写操作有哪些?
  2. c语言源程序的扩展名是什么?
  3. c语言中switch的用法是什么?
  4. C语言中void是什么意思?
  5. C语言中for语句的执行过程是什么?
  6. c语言中“&&”什么意思?
  7. 在c语言中,一条简单语句的结束符为什么?
  8. 逻辑运算符两侧运算对象的数据类型是什么
  9. strcat函数的作用是什么?
  10. c语言中数组的下标从什么开始?