一条LIKE查询问题

这里简单整理测试一下LIKE语句对于"["和"]"的应用。

CREATE TABLE #T(x nvarchar(400))
INSERT INTO #T
SELECT '[werx]' UNION ALL
SELECT '[sd[]]' UNION ALL
SELECT '[[sdf]]' UNION ALL
SELECT '' UNION ALL
SELECT '[img]/img]]' UNION ALL
SELECT 'img]/img]]' UNION ALL
SELECT '[wsd]' 
--我们要查询格式为""的行
SELECT * FROM #T WHERE x LIKE '%%'
/*
结果:
-------------------

[img]/img]]
img]/img]]
*/
SELECT * FROM #T WHERE x LIKE '%[[]%]%'
/*
结果:
-------------------

*/

DROP TABLE #T

这里引用MS的帮助文档:
这里引用LIKE的说明:
可以将通配符模式匹配字符串用作文字字符串,方法是将通配符放在括号中。下表显示了使用 LIKE 关键字和 [ ] 通配符的示例。

符号       含义
LIKE '5[%]' 5%
LIKE '[_]n' _n
LIKE '[a-cdf]' a、b、c、d 或 f
LIKE '[-acdf]' -、a、c、d 或 f
LIKE '[ [ ]' [
LIKE ']' ]
LIKE 'abc[_]d%' abc_d 和 abc_de
LIKE 'abc[def]' abcd、abce 和 abcf

原文地址:https://www.cnblogs.com/wghao/p/965202.html