--1:给你一个全文索引的写法:
SELECT *
FROM table
WHERE CONTAINS(b, '"*北京*" OR "*上海*" OR "*天津*"')
--2:普通SQL,就用Replace 处理一下,拼成 b like '%北京%' or b like '%上海%' or b like '%天津%'

解决方案 »

  1.   

    可以用变量来作为条件吗?
    比如执行这个存储过程时,指定like '%' + @city + '%'
    这样应该也可以吧
      

  2.   

    --例子:你稍微修改下。
    Declare @keyWord varchar(2000)
    set @keyWord='南京+上海'
    select '字段 like ''%'+replace(@keyWord,'+','%'' And 字段 like ''%')+'%'''--存储过程
    ALTER Proc P_Test
    (
    @keyWord varchar(200)
    )
    as
    begin
    declare @s varchar(8000)
    set @s=''
    select @s='jianjie  like ''%'+replace(@keyWord,'+','%'' And jianjie  like ''%')+'%'''
    Exec('select * from tablea where  '+@s+' order by jiage asc')
    end