在sql中,用like时,%表示可以匹配任何字符,/是转义符,相当于匹配含有5%的任何数据
用escape 是不包含字串,这里是不包含'/'的数据

解决方案 »

  1.   

    用/转义是因为单独用%在sql中表示匹配任何字符的意思,所以要加/,使它仅仅表示%这个字符
      

  2.   

    使用 ESCAPE 关键字定义转义符。在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符。例如,要搜索在任意位置包含字符串 5% 的字符串,请使用: 
    WHERE ColumnA LIKE '%5/%%' ESCAPE '/'
      

  3.   

    说得通俗点就是
    like '%5%'这种形式你一定明白,不用多说
    ESCAPE 你可以看作一个标志
    ESCAPE '/'说明 '/'后面的那个字符'%'是当作一个普通字符处理的
    即'/'后的那个'%'并不是当作模式匹配字符而值当作'%'字符本身
    所以 like '%5/%%' escape '/'表示的含义是包含'5%'的任意字符串
    如:5%;125%,5%1;125%%,%125%,125%dd等
    不知道这样说你明白没有?
      

  4.   

    ESCAPE 'escape_character' 
    允许在字符串中搜索通配符而不是将其作为通配符使用。escape_character 是放在通配符前表示此特殊用途的字符。
    通配符 描述 示例 
    % 包含零个或更多字符的任意字符串。 WHERE title LIKE '%computer%' 将查找处于书名任意位置的包含单词 computer 的所有书名。 
    _(下划线) 任何单个字符。 WHERE au_fname LIKE '_ean' 将查找以 ean 结尾的所有 4 个字母的名字(Dean、Sean 等)。 
    [ ] 指定范围 ([a-f]) 或集合 ([abcdef]) 中的任何单个字符。 WHERE au_lname LIKE '[C-P]arsen' 将查找以arsen 结尾且以介于 C 与 P 之间的任何单个字符开始的作者姓氏,例如,Carsen、Larsen、Karsen 等。 
    [^] 不属于指定范围 ([a-f]) 或集合 ([abcdef]) 的任何单个字符。 WHERE au_lname LIKE 'de[^l]%' 将查找以 de 开始且其后的字母不为 l 的所有作者的姓氏。 
      

  5.   

    Jain123(朋克^_^) :对头,就是那个意思!
    ^_^
      

  6.   

    查找带有“5%”的字串,如:“111aaa5%bbb222".
    ESCAPE '/'的意思是:将'/'后面的"%"不作为模式匹配字符,而是实际的%。