T-SQL LIKE 运算符2024 年 8 月 28 日 | 3 分钟阅读 在 Transact-SQL 中,LIKE 运算符用于使用 WHERE 子句搜索列中指定的模式。Transact-SQL 中的 LIKE 子句用于比较相同的值,以使用通配符运算符。 两个通配符与 LIKE 运算符组合使用 - % - 百分号代表零个、一个或多个字符。
- _ - 下划线代表一个字符。
注意:MS Access 使用星号 (*) 代替百分号 (%),使用问号 (?) 代替下划线 (_)。百分号在 LIKE 运算符中代表 '0'、'1' 或更多字符。下划线代表一个字符。 语法根据 LIKE 运算符,% (百分号) 和 _ (下划线) 的基本语法。 编号。 | 查询 |
---|
1 | SELECT *\列列表 FROM 表名 WHERE 列 LIKE 'XXXX%.' | 2 | SELECT *\列列表 FROM 表名 WHERE 列 LIKE '_XXXX.' | 3 | SELECT *\列列表 FROM 表名 WHERE 列 LIKE '_XXXX_.' | 4 | SELECT *\列列表 FROM 表名 WHERE 列 LIKE 'XXXX_.' | 5 | SELECT *\列列表 FROM 表名 WHERE 列 LIKE '%XXXX%.' |
我们使用 AND 或 OR 运算符绑定 LIKE 运算符的条件。 "XXXX" 是一个数字或字符串值。 示例以下是一些示例,展示了包含不同的 LIKE 子句以及 '%' 和 '_' 运算符的 WHERE 部分。 序号 | 语句和描述 |
---|
1 | WHERE SALARY LIKE '300%.' 查找以 300 开头的任何值 | 2 | WHERE SALARY LIKE '%300%.' 查找在任何位置包含 300 的任何值 | 3 | WHERE SALARY LIKE '_000%.' 查找在第二、第三和第四个位置包含 000 的任何值 | 4 | WHERE SALARY LIKE '3_%_%.' 查找以 3 开头并且长度至少为 3 个字符的任何值 | 5 | WHERE SALARY LIKE '%4' 查找以 4 结尾的任何值 | 6 | WHERE SALARY LIKE '_3%4.' 查找在第二个位置包含 3 且以 4 结尾的任何值 | 7 | WHERE SALARY LIKE '3___4' 查找以 3 开头并以 4 结尾的五位数中的任何值 |
考虑包含以下记录的 CUSTOMERS 表。 ID | 姓名 | 年龄 | 地址 | 工资 |
---|
01 | 威廉 | 32 | 卡拉奇 | 7000.00 | 02 | 艾弗里 | 24 | 伦敦 | 3000.00 | 03 | Jackson | 34 | 巴黎 | 1200.00 | 04 | 哈珀 | 20 | 纽约 | 1500.00 | 05 | 艾拉 | 22 | 伊斯兰堡 | 3400.00 | 06 | 蒙蒂 | 23 | 土耳其 | 4400.00 | 07 | 梅森 | 26 | 沙特阿拉伯 | 5050.00 |
示例 1该命令是一个示例,它将从 CUSTOMERS 表中显示所有 SALARY 以 200 开头的记录。 上述命令将产生以下输出。 ID | 姓名 | 年龄 | 地址 | 工资 |
---|
01 | 威廉 | 32 | 卡拉奇 | 7000.00 |
示例 2以下命令是一个示例,它显示 CUSTOMERS 表中所有 SALARY 以 50 结尾的记录。 该命令给出以下输出。 ID | 姓名 | 年龄 | 地址 | 工资 |
---|
07 | 梅森 | 26 | 沙特阿拉伯 | 5050.00 |
示例 3给定的命令是一个示例,它可以显示 CUSTOMERS 表中所有 SALARY 以 1 开头并以 0 结尾的记录。 上述命令给出以下输出。 ID | 姓名 | 年龄 | 地址 | 工资 |
---|
04 | 哈珀 | 20 | 纽约 | 1500.00 |
|