解决方案 »

  1.   

    目前我是有一个办法的,但是感觉这种方法太坑了,所以请教更好的办法。我目前的办法就是:AND (
    (keywordid LIKE '1'
    OR keywordid LIKE ',1'
    OR keywordid LIKE '1,'
    OR keywordid LIKE '1,%'
    OR keywordid LIKE '%,1,%'
    OR keywordid LIKE '%,1')
    OR 
    (keywordid LIKE '2'
    OR keywordid LIKE ',2'
    OR keywordid LIKE '2,'
    OR keywordid LIKE '2,%'
    OR keywordid LIKE '%,2,%'
    OR keywordid LIKE '%,2')
    )
      

  2.   

    正则表达式
    where regexp_like(keywordid,'1|2')
      

  3.   

    正则有点问题,试试这个吧
    where instr(','||keywordid||',',',1,')>0 or instr(','||keywordid||',',',2,')>0
      

  4.   

    sqlsever使用CHARINDEX
    where CHARINDEX(',1,',','||keywordid||',')>0 or CHARINDEX(',2,',','||keywordid||',')>0
      

  5.   

    发到SQL Server版块去吧
     当初愣是没找到SQL Server板块。能给转过去不?使用了CHARINDEX函数报错:'|' 附近有语法错误。
      

  6.   

    忘了,连接符sqlsever和oracle也不一样,我记得sqlsever用+号就行
    where CHARINDEX(',1,',','+keywordid+',')>0 or CHARINDEX(',2,',','+keywordid+',')>0