我数据表Template中有一个Versions字段,为varchar(200),里面的值类似:,12,44,22,3,2,
我需要一个查询语句类似(mssql下是可行的):
Select * from Template Where ','+Versions+',' like '%,2,%'由于担心Versions填写时用户忘记了前后的逗号,所以想在条件Versions字段的前后再加上,,

解决方案 »

  1.   

    注:我不想用正则表达式,如果以后换成mssql的话,但mssql是不支持正则的。
      

  2.   

    Select * from Template Where ''','+Versions+',''' like '''%,'+field+',%'''
    field需要查询的关键字,这个SQL语句构造完成后可以直接命令行执行
      

  3.   

    Select * from Template Where instr(concat(',',Versions,','), ',2,')>0
      

  4.   

    Select * from Template Where concat(',',Versions,',') like '%,2,%'
      

  5.   

    或者简单点儿。直接
    Select * from Template Where FIND_IN_SET(2,Versions) 
      

  6.   

    to wondyfox: 你给的不行谢谢wwwwb,ACMAIN_CHM
    另外我搜索到可以这样:
    SELECT * FROM Template  WHERE ',' || Versions|| ','  LIKE '%,2,%'
    url:http://forums.whirlpool.net.au/forum-replies-archive.cfm/751947.html