like %尼玛% or like %你爸%

解决方案 »

  1.   

    select *
    from 表
    where '尼玛你爸' like '%'+keyword+'%'
      

  2.   

    ----------------------------------------------------------------
    -- Author  :DBA_Huangzj(發糞塗牆)
    -- Date    :2014-01-15 11:26:05
    -- Version:
    --      Microsoft SQL Server 2012 (SP1) - 11.0.3128.0 (X64) 
    -- Dec 28 2012 20:23:12 
    -- Copyright (c) Microsoft Corporation
    -- Enterprise Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: )
    --
    ----------------------------------------------------------------
    --> 测试数据:[huang]
    if object_id('[huang]') is not null drop table [huang]
    go 
    create table [huang]([keyword] varchar(4))
    insert [huang]
    select '尼玛' union all
    select '你爸' union all
    select '大四'
    --------------开始查询--------------------------select * from [huang] WHERE CHARINDEX(keyword,'尼玛你爸',1)>0
    ----------------结果----------------------------
    /* 
    keyword
    -------
    尼玛
    你爸*/
      

  3.   


    这货出手就错。where keyword like '%尼玛%' or keyword like '%你爸%'
      

  4.   

    SQL CHARINDEX函数返回字符或者字符串在另一个字符串中的起始位置。CHARINDEX函数调用方法如下:CHARINDEX ( expression1 , expression2 [ , start_location ] )Expression1是要到expression2中寻找的字符中,start_location是CHARINDEX函数开始在expression2中找expression1的位置。——————————————
    like用起来简单,但数据量较大时效率低
      

  5.   

     CHARINDEX
     PATINDEX
     LIKE
    都可以实现该功能,效能上charindex会更佳