代码之家  ›  专栏  ›  技术社区  ›  James Thomas

如何在SQL Server中转义?[复制品]

  •  29
  • James Thomas  · 技术社区  · 15 年前

    这个问题已经有了答案:

    我正试图从 LIKE 语句。我试过用 ESCAPE 关键字如下:

    COLUMNNAME NOT LIKE '%[\_]xyz%' ESCAPE '\'
    

    但它不起作用。它还在过滤 %xyz% 当我真的想把它过滤掉的时候 %_xyz% .

    如果不是 逃逸 关键字,否则如何完成?

    感谢您的帮助。

    3 回复  |  直到 11 年前
        1
  •  42
  •   Mark Byers    15 年前

    这就应该奏效:

    COLUMNNAME NOT LIKE '%[_]xyz%'
    

    你不需要逃跑。你所写的也应该有效。

    如果您想使用Escape,可以这样做:

    columnname NOT LIKE '%\_xyz%' ESCAPE '\';
    

    有关转义字符的文档是 here .

        2
  •  15
  •   Jose Chama    15 年前

    使用制动器

    这在SQL Server 2005中对我有效

    select *
    from #table 
    where a like '%[_]xyz%'
    
        3
  •  4
  •   Guffa    15 年前

    不用括号试试:

    COLUMNNAME NOT LIKE '%\_xyz%' ESCAPE '\'