广

MSSQL

  • MYSQL
  • MSSQL
  • Redis
  • MongoDB
  • oracle数据库
  • 数据管理

    SQLServer中求两个字符串的交集

    2018-05-08 11:29:30 次阅读 稿源:互联网
    零七网广告
    全网推广平台,软文发布
    使用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,
    */

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七网广告
    零七网广告
    零七网广告
    零七网广告