匹配开放式模式

附加到字符串的开头或结尾(或两者)的%通配符将允许在模式开始之前或结束之后的任何字符中的 0 个或更多个匹配。

在中间使用’%‘将允许模式的两个部分之间的 0 个或更多字符匹配。

我们将使用此 Employees 表:

ID FName 参数 LName 电话号码 经理 ID DepartmentID 薪水 聘用日期
1 约翰 约翰逊 2468101214 1 1 400 23-03-2005
2 索菲 Amudsen 2479100211 1 1 400 11-01-2010
3 罗尼 工匠 2462544026 2 1 600 2015 年 6 月 8 日
4 乔恩 桑切斯 2454124602 1 1 400 23-03-2005
希尔德 木节 2468021911 2 1 800 01-01-2000

以下语句匹配所有具有 FName 的记录,其中包含来自 Employees Table 的字符串’on’。

SELECT * FROM Employees WHERE FName LIKE '%on%';
ID FName 参数 LName 电话号码 经理 ID DepartmentID 薪水 聘用日期
3 R on ny 工匠 2462544026 2 1 600 2015 年 6 月 8 日
4 J on 桑切斯 2454124602 1 1 400 23-03-2005

以下语句匹配所有具有 PhoneNumber 的记录,这些记录 Employees 中的字符串'246’ 开头

SELECT * FROM Employees WHERE PhoneNumber LIKE '246%';
ID FName 参数 LName 电话号码 经理 ID DepartmentID 薪水 聘用日期
1 约翰 约翰逊 246 8101214 1 1 400 23-03-2005
3 罗尼 工匠 246 2544026 2 1 600 2015 年 6 月 8 日
希尔德 木节 246 8021911 2 1 800 01-01-2000

以下语句匹配所有记录,其中 PhoneNumber Employees 中的字符串'11’ 结尾

SELECT * FROM Employees WHERE PhoneNumber LIKE '%11'
ID FName 参数 LName 电话号码 经理 ID DepartmentID 薪水 聘用日期
2 索菲 Amudsen 24791002 11 1 1 400 11-01-2010
希尔德 木节 24680219 11 2 1 800 01-01-2000

员工中 Fname 第三个字符为’n’的所有记录。

SELECT * FROM Employees WHERE FName LIKE '__n%';

(在’n’之前使用两个下划线跳过前 2 个字符)

ID FName 参数 LName 电话号码 经理 ID DepartmentID 薪水 聘用日期
3 罗尼 工匠 2462544026 2 1 600 2015 年 6 月 8 日
4 乔恩 桑切斯 2454124602 1 1 400 23-03-2005