我想查找所有以开头的表TB_
,因此我编写了以下脚本:
select * from INFORMATION_SCHEMA.TABLES where TABLE_NAME like 'TB_%'
令我惊讶的是,我得到了以下结果:
TB103_xxx TB037_bbb TB104_ccc
我很好奇为什么?
它表示任何单个字符与“ like”结合使用。看到
MSDN-像(Transact-SQL)
%
-零个或多个字符的任何字符串。
_
-任何单个字符。_a
将匹配aa
,ba
等等。
[ ]
-指定范围([af])或集合([abcdef])中的任何单个字符。
[^]
-不在指定范围([^ af])或集合([^ abcdef])中的任何单个字符。
您可以使用[_]
下划线进行匹配,因此like 'TB[_]%'
或者您可以使用LIKE 'TB\_%' ESCAPE '\'.
(感谢Jeroen Mostert)