like
作者:cmscn 日期:2006-04-24
使用 % 通配符
如果指定 like ''5%'',sql server 将搜索后面带有零个或多个任意字符的数字 5。
例如,此查询将显示数据库中所有的系统表,因为它们都以字母 sys 开始:
select table_name
from information_schema.tables
where table_name like ''sys%''
说明 请注意:系统表可以随版本不同而更改。推荐使用信息架构视图或适用的存储过程处理 sql server 系统表。
若要查阅非系统表的所有对象,请使用 not like ''sys%''。如果共有 32 个对象且 like 找到 13 个与模式匹配的名称,则 not like 将找到 19 个与 like 模式不匹配的对象。
使用 like ''[^s][^y][^s]%'' 模式不一定每次找到的名称都相同。可能仅得到 14 个名称(而不是 19 个),除了系统表名称外,所有以 s 开始或第二个字母为 y 或第三个字母为 s 的名称也都将从结果中消除。这是因为用反向通配符匹配字符串是分步骤进行计算的,一次一个通配符。如果在计算过程中任一环节匹配失败,那么就会将其消除。
将通配符作为文字使用
可以将通配符模式匹配字符串用作文字字符串,方法是将通配符放在括号中。下表显示了使用 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
评论: 5 | 引用: 0 | 查看次数: 862
发表评论