本篇文章介绍T-SQL字符串处理中的LIKE谓词。
一.LIKE谓词
T-SQL提供的LIKE谓词,用于检查字符串是否能够匹配指定的模式。在PATINDEX函数中已经使用过了类似的模式。接下来将介绍模式中使用的通配, 并演示它们的用法。
► %(百分号)通配符
百分号代表任意长度的字符串, 包括空字符串。 例如, 以下查询返回姓氏(last name) 以字符D'开头的所有雇员:
SELECT empid, lastname FROM HR.Employees WHERE lastname LIKE N'D%';
► _(下划线)通配符
下划线代表任意单个字符。 例如, 以下查询返回姓氏 (last name) 第二个字符为 'e' 的所有雇员:
SELECT empid, lastname FROM HR.Employees WHERE lastname LIKEN'_e%';
► [<字符列>]通配符
方括号中包含一列字符(例如[ABC]') , 表示必须匹配列指定字符中的一个字符。例如,以下查询返回姓氏 (last name) 以字符 'A' 、 'B' 或 'C'开头的所有雇员:
SELECT empid, lastname FROM HR.Employees WHERE lastname LIKE N'[ABC]%';
► [<字符列>-<字符列>]通配符
方括号中包含一个字符范围(例如'[A-E]'),表示必须匹配指定范围内的一个字符。例如,以下查询返回姓氏 (last name) 以字符 'A'到 'E开头的所有雇员:
SELECT empid, lastname FROM HR.Employees WHERE lastname LIKE N'[A-E]%';
► [^<字符列>]通配符
方括号中包含一个插入符(^), 后面跟着一个字符列或范围(例如'["A-E]') , 表示不属于指定字符列或范围内的任意单个字符。 例如, 以下查询返回姓氏(last name)不是以字符'A'到'E'开头的所有雇员:
SELECT empid, lastname FROM HR.Employees WHERE l astname LIKE N'[AA-E]%';
好了,本篇文章就介绍到这儿,欢迎大家留言交流;喜欢或有帮助到您的话,点个赞或推荐支持一下!