2008-08-08 73 views

回答

338

T-SQL Reference for LIKE for SQL Server 2000

您可以使用通配符模式匹配字符为文字字符。要将通配符用作文字字符,请将通配符括在括号内。该表显示了使用LIKE关键字和[]通配符的几个示例。

对于您的情况:

... LIKE '%[_]d' 
138

显然@Lasse的解决方案是正确的,但还有另一种方式来解决你的问题:T-SQL操作LIKE定义了可选的ESCAPE条款,即允许声明字符这会将下一个字符转换为模式。

对于你的情况,以下WHERE子句是等效的:

WHERE username LIKE '%[_]d';   -- @Lasse solution 
WHERE username LIKE '%$_d' ESCAPE '$'; 
WHERE username LIKE '%^_d' ESCAPE '^'; 
+20

要完成图片:在`ESCAPE`子句是SQL标准的一部分,任何DBMS,不只是SQL Server将正常工作。 – 2015-06-17 07:46:29